对于家庭作业,我需要创建一个可以从文件读取和写入字节数组的类。我已经成功创建了可以读写 CSV 和文本的类,但是在涉及数组时我遇到了一些困难。
我写了一个方法(writeByte - 见下文),它使用 FileOutput 类(创建文件,类可以在这里找到http://www.devjavasoft.org/SecondEdition/SourceCode/Share/FileOutput.java)。我被困在嵌套的 for 循环中。我需要 for 循环来允许用户输入一系列由制表符分隔的整数。
运行以下代码时,出现以下错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The method writeNewline() in the type FileOutput is not applicable for the arguments (String[])
我明白这条错误消息对我说的是什么,但是当我尝试在 FileOutput 类中创建一个新的 writeNewLine 方法时,我并没有好到哪里去。我希望有人能够建议我如何解决这个问题。我很高兴不使用 FileOutput 类,我只使用它,因为我已经使用它成功创建了其他文件处理程序。
亲切的问候
public void writeByte(final String fileNameOUT){
Scanner input = new Scanner (System.in);
FileOutput createData = new FileOutput (fileNameOUT);
System.out.println("How many rows?");
int rowsOut = input.nextInt();
System.out.println("How many columns?");
int columnsOut = input.nextInt();
System.out.println("Please enter data, separate each column with a tab.");
String[] dataIn;
int [] [] data = new int [rowsOut] [columnsOut];
String[] line = null;
for (int i = 0; i < rowsOut; i++){
line = createData.writeNewline(dataIn = input.nextLine().split("\t"));
for (int j = 0; j < columnsOut; j++){
data[i][j] = Integer.parseInt(line[j]);
System.out.print(data[i][j]);
}
}
createData.close();
}