所以我试图按字节读取文本文件,然后读取它的char。 但我正试图将它插入一个2D阵列,这是ankoshh。
感谢任何帮助:)
public class SteamOutputToFile
{
public static void main(String [] args)
{
int row;
int col;
String [][] ankoshh = new String[row][col];
try{
InputStream inputstream = new FileInputStream("E:\\testing.txt");
int data = inputstream.read();
while(data != -1) {
//do something with data...
System.out.print((char)data);
data = inputstream.read();
}
}
catch (IOException ioexception){
System.out.println("File input error occured!");
ioexception.printStackTrace();
}
for (int i=0; i<ankoshh.length;i++)
{
for (int j=0; j<ankoshh[i].length;j++)
{
ankoshh[row][col] = (char)data[i];
}
答案 0 :(得分:0)
Apache common-io极大地帮助您做到这一点,没有必要使用FileInputStream。
import java.io.File;
import java.io.IOException;
import java.util.List;
import org.apache.commons.io.FileUtils;
public class Test
{
public static void main(String [] args) throws IOException
{
File file = new File (args[0]);
List<String> lines = FileUtils.readLines (file);
String[][]ankoshh = new String [lines.size ()][];
int line_index=0;
for (String line:lines)
{
String[] caracters = line.split("(?!^)");
ankoshh[line_index++] = caracters;
}
}
}
如果文件非常大,你也可以使用line iterator:
LineIterator it=FileUtils.lineIterator (file);
while (it.hasNext ())
...
希望这有帮助。
干杯,
佛瑞德