如何在Java中String数组的文本文件,存储读取? [英] How to read from text file and store in String array in Java?

查看:125
本文介绍了如何在Java中String数组的文本文件,存储读取?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含数据如下文本文件TextFile.txt的:

  A-ABC,A-XYZ,B-MNO,A-IJK,B-PQR

现在,我已经从这个文件读取和值存储在两个单独的数组AB,使得具有preFIX值A - 获取存储在数组A和preFIX值B-获取存储在阵列B.

此外,当存储数据时,preFIX需要即只ABC需要被存储在数组A被删除

 的FileInputStream fstream的=新的FileInputStream(C:\\选择\\ New_Workspace \\ Salary.txt);
//使用DataInputStream以读取二进制而不是文本
// DataInputStream以在=新DataInputStream所(fstream的);
BR的BufferedReader =新的BufferedReader(新的InputStreamReader(fstream的));
串strLine中;
而((strLine中= br.readLine())!= NULL){
串[] arrayLine1 = strLine.split(,);
对于(一个String:arrayLine1)的String [] = arrayLine2 s.split(:);
{
如果(s.matches(基本))
{
基本= Double.parseDouble(arrayLine [1]);
}
否则如果(s.matches(四氯乙烯-D);
{
percD = Double.parseDouble(arrayLine [3]);
}
否则,如果(s.matches(四氯乙烯-A))
{
河鲈= Double.parseDouble(arrayLine [5]);
}}


解决方案

尝试是这样的: -

 的FileInputStream中=新的FileInputStream(file.txt的);
    BR的BufferedReader =新的BufferedReader(新的InputStreamReader(中));    串strLine中;
    的String [] filearray;
    filearray =新的String [10];    而((strLine中= br.readLine())!= NULL){    对于(INT J = 0; J< myarray.length; J ++){
    filearray [J] = br.readLine();
    }    }
    附寄();

I have a text file textfile.txt which contains data as follows :

A-abc , A-xyz , B-mno , A-ijk , B-pqr

Now, i have to read from this file and store the values in two separate arrays "A" and "B" , such that the values with prefix "A-" gets stored in array A and values with prefix "B-" gets stored in array B.

Also, while storing the data, the prefix needs to be removed i.e. only "abc" needs to be stored in array A.

FileInputStream fstream = new FileInputStream("C:\opt\New_Workspace\Salary.txt"); 
// use DataInputStream to read binary NOT text
// DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
String strLine;
while ((strLine = br.readLine()) != null)   {
String[] arrayLine1= strLine.split(" , ");
for(String s:arrayLine1)

String[] arrayLine2 = s.split(": ");
{
if(s.matches("Basic: "))
{
basic = Double.parseDouble(arrayLine[1]);                 
}
else if(s.matches("Perc-D ");
{
percD = Double.parseDouble(arrayLine[3]);                
}
else if(s.matches("Perc-A: "))
{
percA = Double.parseDouble(arrayLine[5]);                 
}

}

解决方案

Try something like this :-

FileInputStream in = new FileInputStream("file.txt");
    BufferedReader br = new BufferedReader(new InputStreamReader(in));

    String strLine;
    String[] filearray;
    filearray = new String[10];

    while ((strLine = br.readLine()) != null) {

    for (int j = 0; j < myarray.length; j++){
    filearray[j] = br.readLine();
    }

    }
    in.close();

这篇关于如何在Java中String数组的文本文件,存储读取?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆