一、问题
因为要实现文件导入之后识别文件并存入二维数组中,便于其他方法调用。
二、源码
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;
class LineNumberReaderExample
{
public static void main(String[] args)
{
readFromFile("文件位置"); //文件需为CSV文件或者以,为分割的txt文件。
}
private static void readFromFile(String filename)
{
LineNumberReader lineNumberReader = null;
try
{
lineNumberReader = new LineNumberReader(new FileReader(filename));
String lines = lineNumberReader.readLine();
int n = lines.length()-lines.replaceAll(",", "").length(); //获取第一行文件中有几个逗号
int a=n+1; //获取文件一共有几列
//获取文件有几行
while ((lines = lineNumberReader.readLine()) != null)
{
//System.out.println(lines);
}
String [][]file = new String[lineNumberReader.getLineNumber()][a]; //设置一个二维数组根据csv文件内容
System.out.println("该文件有"+a+"列,有"+lineNumberReader.getLineNumber()+"行!");
}
catch (Exception ex)
{
ex.printStackTrace();
} finally
{
try {
if (lineNumberReader != null){
lineNumberReader.close();
}
} catch (IOException ex){
ex.printStackTrace();
}
}
}
}