java读取文件中多个数据,放入不同数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java读取文件中多个数据,放入不同数组相关的知识,希望对你有一定的参考价值。

李开复 ,1197161814 ,14542223 ,326 ,3465874172750975 ,255 ,400 ,
Laini的袋鼠妈妈 ,2734949925 ,10364 ,32 ,3465897979167134 ,14 ,3 ,
假设如上,分别是人名,id,粉丝数,关注数等等,需要分别读取这些数据放入不同数组,该怎么实现

第一步,实现读取文件功能,定义方法public List<String> read(String filePath);这个方法是读取文件内容,每一行做一个string字符串存到列表list中,读取完后返回字符串列表;可以使用scanner类和fileinputstream结合实现,先new fileinputstream对象,再new scanner对象,之后通过scanner的nextline方法读取完所有数据,具体使用参考他们的api
第二步,拿到第一步读取的字符串列表,列表的size就表示多少条数据,循环遍历这个列表,之后读取到每一行数据,就使用String类的split方法,分割字符串,分割字符为:,逗号,分割后得到一个string数组,接下来就是依次拿到数组的元素然后存到你要存的地方了,怎么存看你需求了,你题目也没说清,自己琢磨吧
参考技术A 读取每行的数据(数据是每行存储),然后按逗号切割。保存最好还是使用对象Object。
一般的做法是 ObjectOutStream/ObjectInputStream 输入输出到文件中。
BufferedReader br = new BufferedReader(new FileReader(new File("")));
String str="";
while( (str = br.readLine())!=null)
String[] aa = str.split(",");
.....................................
追问

但是我想不同类型的数据存到不同的数组里,有很多行这样形式的数据,每行7个数,就是要建立7个数组,把每行的7个数分别放到7个数组里,而且数据别较多,想用arraylist实现成么

追答

不好取数据,如果要你取某个人的数据,你要查询7个arraylist,还要保证你知道他的位置在哪里。不如用List

追问

不是,我是奉命做新浪微博api的一个实践,但是才大一啊,底子太薄,我不是要查询,人名,id,粉丝数,关注数,是要复制到另一个文件里,微博地址的id,是要用做函数参数来获取评论和转发数,所以存到arraylist里,然后再写到另一个文件里就行了

追答

不错嘛 。。。大一就开始自己动手编程了。那也很简单,数据切割出来分别插入不同的文件就行了。BufferedReader/BufferdWriter ,可以选择不同的IO对象。

追问

承蒙老师看得起,呵呵,能稍微具体点么,谢了

参考技术B

结果长什么有效果图吗,

你使用

String s = "a,b,c";
String[] arr = s.split(",");

看看是不是你要的效果

参考技术C java读取文件中多个数据,放入不同数组
具体方法:

import java.util.Arrays;
public class Temp
public static void main(String[] args)
String InitProducts[] = "商品01","商品05","商品04","商品02","商品03";
String deleteProducts[] = "商品04","商品02";
String newProducts[] = new String[InitProducts.length - deleteProducts.length];
int count = 0;
for(int i=0;i<InitProducts.length;i++)
boolean flag = true;
String temp = InitProducts[i];
for(int j=0;j<deleteProducts.length;j++)
if(temp.equals(deleteProducts[j]))
flag = false;
break;


if(flag)
newProducts[count++] = temp;


System.out.println(Arrays.toString(newProducts));


参考技术D 先新建7个数组变量;
按行读取文件,每一行当作一个文本,然后以逗号为分隔符进行分割,得到临时数组变量,然后将临时数组变量中的每个元素放入对应数组中即可

以上是关于java读取文件中多个数据,放入不同数组的主要内容,如果未能解决你的问题,请参考以下文章

Java - 如何读取json文件并将值放入数组中

Java:如何读取文本文件

从文件中读取多行中的多个值(Java)

将结构数组放入文件并读取它

如何按整数读取文件整数并将它们放入二维数组?

从文件中读取字符串并使用 Groovy 将它们放入数组中