我有这个文本文件
SFrm EFrm SegAScr Phone
0 36 -158051 SIL
37 105 -644247 +NONTRANS+
106 109 -96452 l SIL w b
110 112 -125055 w l aa i
113 115 -150550 aa w 7 i
116 118 -146662 7 aa i i
119 122 -46757 i 7 d i
123 126 -58440 d i SIL e
127 146 -90776 +MUSIC+
147 152 -61098 t SIL u b
153 158 -67393 u t f i
159 174 -251284 f u f i
175 178 -79772 f f aa i
179 194 -134562 aa f 7 i
195 206 -33695 7 aa a i
207 223 -194024 a 7 SIL e
224 350 -434997 +NOISE+
351 353 -28280 SIL
Total score: -2802095
我设法将整个东西存储在一个字符串中,但是我需要将它存储在一些数组中,其中每列都以不同的数组表示我知道我可以使用.split()作为将其转换为数组的过程但是我将无法丢弃列之间的空格。
ps:文本文件是通用的,因此这些数字和字母不是常量,但它的形式是常量(4列)
我现在的主要问题是当它们位于第四列中任何一行的开头时捕获重复的元音,如果有人比我的方法更容易,那么对同一行的数字进行一些计算会得到任何帮助: )
答案 0 :(得分:0)
我希望这有帮助:
public static void main(String[] args) throws FileNotFoundException, IOException {
FileReader inputFile = new FileReader("input");
//Instantiate the BufferedReader Class
BufferedReader bufferReader = new BufferedReader(inputFile);
//Variable to hold the one line data
String line="";int index=0;
String[] column1= new String[100];
String[] column2 = new String[100];
String[] column3=new String[100];
String[] column4=new String[100];
while ((line = bufferReader.readLine()) != null){
String temp="";int count=1;
column4[index]="";
//System.out.println(line);
StringTokenizer st = new StringTokenizer(line," ");
//String tokenizer gets the token from each space
while(st.hasMoreTokens())
{
temp = st.nextToken();
//System.out.println(temp);
If(temp.equals("Total")){
break;
}
if(count==1)
{
// System.out.println(temp);
column1[index] = temp;
}
if(count==2){
column2[index] = temp;
}
if(count==3)
{
column3[index] = temp;
}
if(count==4)
{
column4[index] += temp;
}
if(count<4)
count++;
}
index++;
}
for(int i=0;i<index-1;i++){
System.out.println(column1[i]+" "+column2[i]+" "+column3[i]+" "+column4[i]);
}
}
我声明了四个数组来存储上面数据中的列。我正在使用stringTokenizer来获取字符串的每个标记。当我从上面的数组打印数据时,我得到了这个输出:
SFrm EFrm SegAScr Phone
0 36 -158051 SIL
37 105 -644247 +NONTRANS+
106 109 -96452 lSILwb
110 112 -125055 wlaai
113 115 -150550 aaw7i
116 118 -146662 7aaii
119 122 -46757 i7di
123 126 -58440 diSILe
127 146 -90776 +MUSIC+
147 152 -61098 tSILub
153 158 -67393 utfi
159 174 -251284 fufi
175 178 -79772 ffaai
179 194 -134562 aaf7i
195 206 -33695 7aaai
207 223 -194024 a7SILe
224 350 -434997 +NOISE+
351 353 -28280 SIL