[英]Converting lines of text from a text file to multiple columns in Java
我想将以下输入从文本文件转换为列格式。
输入文本:
我要去芝加哥。
X1:要去
X2:我是
X3:去芝加哥
他正在踢足球。
X1:正在播放
X2:他
X3:足球
预期产量:
我X2
是X2
去X1
到X3
芝加哥X3
他X2
是X1
玩X1
足球X3
FileInputStream fis = new FileInputStream("/input.txt");
BufferedReader br = new BufferedReader(new
InputStreamReader(fis,"UTF-8"));
while((line = br.readLine())!=null)
{
if(!(line.startsWith("X1:")
{
String words[]=line.split(" ");
for(int i=0;i<words.length;i++)
{
//System.out.println(words[i]);
String abc[] = words[i].split(" ",100);
String w="";
for(int j=0; j<abc.length;j++)
{
//System.out.println(abc[j]);
if(j<99)
//w=w+abc[j]+"\t"+"\n";
w=w+abc[j]+"\t";
else
w=w+abc[j];
}
str.append("\n");
str.append(w);
str.append("\n");
System.out.println(w);
fw.write(w);
fw.write("\n");
}
str.append("\n");
}//end of if
}
您将需要分析文本文件并查找诸如“ X1:”,“ X2”和“ X3:”之类的关键字,并存储其后的字符串。
阅读完整的句子后,将其存储在String中,然后执行以下操作:
String[] words = sentence.split("\\s+");
这将按空格分割单个单词。 对文本文件中关键字“ X1:”,“ X2:”和“ X3:”之后的字符串执行相同的操作。
然后,假设您将X1中的每个单词存储为String数组:
ArrayList<String> output = new ArrayList<>();
for(String word : words) {
for(int j = 0; j < X1.length; j++) {
if(X1[j].equals(word))
output.add(word + " X1");
}
// do the same for X2, X3
}
// Print out the output
for(String elem : output)
System.out.println(elem);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.