gpt4 book ai didi

java - 将字符串解析为整数并将它们存储在数组中

转载 作者:行者123 更新时间:2023-12-02 04:15:38 24 4
gpt4 key购买 nike

我对如何正确执行此操作感到有点困惑。我已经找到了一些方法,现在我已经深陷其中了。所以我想做的是解析一个文本文件,每行都有一堆数字,如下所示。

1 10
2 12
3 13

等等......

每一个都被一个空格分开。我已经做到了这一点,我什至可以为对象中的变量分配正确的数字。我的事情是它不断覆盖数组,并且不会用文本文件中的数据填充其余部分。我认为如果我打印数组,它基本上应该打印文本文件。

public static void main(String[] args) {

Process [] pArray;
//just need to have 10 Process
pArray = new Process [10];

//delimiter to parse string
String delimiter = " ";
String[] tokens;
tokens = new String [10];

/*
* save this for input handeling
Scanner input = new Scanner( System.in );
System.out.println("Enter the Text file for data set");
String fileDestination = input.next();
* */

//get data from the file
File file = new File("C:/Users/Kenshin/Desktop/TestData.txt");
FileInputStream fis = null;
BufferedInputStream bis = null;
DataInputStream dis = null;
try {

fis = new FileInputStream(file);
// Here BufferedInputStream is added for fast reading.
bis = new BufferedInputStream(fis);
dis = new DataInputStream(bis);
// dis.available() returns 0 if the file does not have more lines.
while (dis.available() != 0) {
// this statement reads the line from the file and print it to
// the console.
int g = 0;
//System.out.println(dis.readLine());
tokens = dis.readLine().split(delimiter);
int aInt = Integer.parseInt(tokens[0]);
int bInt = Integer.parseInt(tokens[1]);
for( int i = 0; i < tokens.length; i ++)
{

//int aInt = Integer.parseInt(tokens[i]);
pArray[g] = new Process(aInt, bInt);

}

g++;

}

// dispose all the resources after using them.
fis.close();
bis.close();
dis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

for(int i = 0; i < pArray.length; i ++)
{
System.out.print(pArray[i].arrivalTime + " ");
System.out.println(pArray[i].burstTime);
}
}

最佳答案

你不需要这样做

int g = 0;

在循环之外?否则,您将不断重写数组中的初始值,而不是提高该值(填充数组的其余部分)。

为了使这个更简单,我将填充 ArrayList<Process>或其他类似的集合而不是固定长度的数组。

关于java - 将字符串解析为整数并将它们存储在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12801012/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com