有个数据 比如 ;B100101/01/2007 J200102/03/2008;第一个Array
B1001是书号,后面01/01/2007是日期, 我已经用split(";")把它分开,这个单独的数据记录两本书的情况第二个Array
现在我想用split(" ")把书号和日期在分开,存到第二个Array里面这个嵌套该怎么弄?
B1001是书号,后面01/01/2007是日期, 我已经用split(";")把它分开,这个单独的数据记录两本书的情况第二个Array
现在我想用split(" ")把书号和日期在分开,存到第二个Array里面这个嵌套该怎么弄?
List list=new ArrayList();
for(int i=0,l=str.lenght;i<l;i++)
{
String [] str2=str[i].split(" ");
for(int j=0,len=str2.lenght;j<len;j++){
list.add(str2[j].subString(0,5));
list.add(str2[j].subString(5,str2.lenght));
}
}
/**
*
*/
package com.sysdynamic.test;import java.util.ArrayList;/**
* @author Andy Yang
*
*/
public class ArrayTest { static String str = ";B100101/01/2007 J200102/03/2008;"; public ArrayTest() { } public static void print() {
String[] arr = str.split(";");
for (int i = 0; i < arr.length; i++) {
if (arr[i].length()>0) {
String subStr = arr[i];
String[] subArrs = subStr.split(" ");
for (String subArr : subArrs)
System.out.println(subArr);
}
} } public static void main(String[] args) { print();
}}
Member类我已经写好
这是读取的文件。
Jo Blow;100340;B100101/10/05 J123429/09/05
James Johns;123456;B121225/09/05 J121225/09/05;3我的代码:public Member[] membersReadFile() throws FileNotFoundException, IOException
{
BufferedReader inputStream = null;
inputStream = new BufferedReader(new FileReader ("members.txt"));
String line;
line = inputStream.readLine();
while (line != null)
{
String[] memberParts = line.split(";");
if (memberParts.length == 4)
{
memberList[memberCount] = new Member(memberParts[0], Integer.parseInt(memberParts[1]), memberParts[2], Integer.parseInt(memberParts[3])); //memberParts[0]是姓名, Integer.parseInt(memberParts[1])是ID号, memberParts[2]借过的书单子, Integer.parseInt(memberParts[3]),借书交的费用
}
else
{
memberList[memberCount] = new Member(memberParts[0], Integer.parseInt(memberParts[1]), memberParts[2]); ////memberParts[0]是姓名, Integer.parseInt(memberParts[1])是ID号, memberParts[2]借过的书单子,没Integer.parseInt(memberParts[3])是指费用为0.
}
memberCount ++;
由于书单是几本书在一起的,中间有空格连着,我想用split(" ")把每个书单分开,不在一行显示。
List list = new ArrayList();
String[] breakParts = memberParts[2].split(" ");
for (int i=0; i<breakParts.length; i++)
{
list.add(breakParts[i].subString(0,5));
list.add(breakParts[i].subString(5,str2.lenght));
}
// 我想可不可以在这里先不要加list.add()? 只是分开?我试了不成功。 line = inputStream.readLine();
} inputStream.close();
return memberList;
}