您有一个名为read.txt的文件,下面是文件内的数据。
OS:B,A,Linux,Windows 7,Windows
ARCH:32 Bit,64 Bit
Browser:Chrome,Firefox,IE
我想读取该文件,并希望通过spiting与每个列将数据存储到String数组中 ":"符号
示例如下
String a[] = { "A","B","Linux", "Windows 7", "Windows" };
String b[] = { "32 Bit", "64 Bit"};
String c[] = { "Chrome", "Firefox" ,"IE"};
答案 0 :(得分:5)
一种方法是通过ReadLine提取每一行。 一旦我们有一个包含该行的字符串,就假设我们有一个“:”作为分隔符来拆分该行。 提取数组的第二个元素,并使用“,”作为分隔符
进行另一个分割答案 1 :(得分:0)
使用apache commons io ...
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.io.FileUtils;
public class StackOverflowExample {
public static void main(String[] args) throws IOException{
List<String> lines = FileUtils.readLines(null, "UTF-8");
List<String[]> outLines = new ArrayList<String[]>();
for(int i = 0; i < lines.size(); i++){
String line = lines.get(i);
outLines.add(line.split("[:,]"));
}
}
}
正如已经指出的那样 - 你真的应该包括一个你正在使用的代码的例子,它不会做你期望它做的事情。如果你真的根本不知道怎么做而且没有代码 - 我不确定这会有什么帮助。
答案 2 :(得分:-1)
以下是您阅读文件的方式:
BufferedReader reader = new BufferedReader("read.txt");
while((line = reader.readLine()) != null)
{
//process line
}
所以要收到你想要的结果:
ArrayList<String[]> arrays = new ArrayList<String[]>;
BufferedReader reader = new BufferedReader("read.txt");
while((line = reader.readLine()) != null)
{
//process line
line = line.split(":")[1];//get the second part
arrays.add(line.split(","));//split at "," and save into the ArrayList
}