现有文本文件内容:
[HEAD]
01|20131111|E32423|324324|983|983|459
[AAA]
110101|34234|3412134|111
110102|33534|343255|222
[BBB]
110101|34234|3412134|111
110102|33534|343255|222
[SITRBEND]通过字符流获取后得到以下字符串:
[HEAD]\r\n01|20131111|E32423|324324|983|983|459\r\n[AAA]\r\n110101|34234|3412134|111110102|33534|343255|222\r\n[BBB]\r\n110101|34234|3412134|111\r\n110102|33534|343255|222\r\n[SITRBEND]\r\n将该字符串按标签用正则表达式分段为:
string[0]=[HEAD]\r\n01|20131111|E32423|324324|983|983|459\r\n
string[1]=[AAA]\r\n110101|34234|3412134|111110102|33534|343255|222\r\n
string[2]=[BBB]\r\n110101|34234|3412134|111\r\n110102|33534|343255|222\r\n
string[3]=[SITRBEND]\r\n
[HEAD]
01|20131111|E32423|324324|983|983|459
[AAA]
110101|34234|3412134|111
110102|33534|343255|222
[BBB]
110101|34234|3412134|111
110102|33534|343255|222
[SITRBEND]通过字符流获取后得到以下字符串:
[HEAD]\r\n01|20131111|E32423|324324|983|983|459\r\n[AAA]\r\n110101|34234|3412134|111110102|33534|343255|222\r\n[BBB]\r\n110101|34234|3412134|111\r\n110102|33534|343255|222\r\n[SITRBEND]\r\n将该字符串按标签用正则表达式分段为:
string[0]=[HEAD]\r\n01|20131111|E32423|324324|983|983|459\r\n
string[1]=[AAA]\r\n110101|34234|3412134|111110102|33534|343255|222\r\n
string[2]=[BBB]\r\n110101|34234|3412134|111\r\n110102|33534|343255|222\r\n
string[3]=[SITRBEND]\r\n
解决方案 »
- 关于equals的使用
- 请问谁看过孙鑫的Struts2深入详解和开发者突击:Struts 2核心技术与Java EE框架整合开发实战这两本书?
- java难题近来讨论
- JAVA 调用函数值为何不娈??
- 求组!JAVA1.6类库如何加载
- 网络访问的问题-有高手么!谢谢回答!
- 请问哪有《thinking in java》第三版下载(要pdf文档的),谢谢!
- 实数向字符窜转化的简单问题?
- 如何提取ArrayList里的串数组的元素??
- 我在每题中都写了答案,我知道大多数是错的,请高手指教,谢谢
- 问java的两个比较奇怪的问题,谢谢!
- 类String. split 实现,请帮忙看看case 是否全,代码哪里可以优化。
public class StringTest { public static void main(String[] args) {
try {
FileReader fr = new FileReader(new File("/Users/user/Documents/workspacexone/Test/src/com/withiter/csdn/test/1.txt"));
BufferedReader br = new BufferedReader(fr);
String s = null;
StringBuilder sb = new StringBuilder("");
int i = 0;
while(( s = br.readLine())!=null){
if(s.contains("[")){
sb.append("\r\nstring["+i+++"]").append(s);
}else{
sb.append(s);
}
}
System.out.println(sb.toString());
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}
public static void main(String[] args) {
String str = "[HEAD]\r\n01|20131111|E32423|324324|983|983|459\r\n[AAA]\r\n110101|34234|3412134|111110102|33534|343255|222\r\n[BBB]\r\n110101|34234|3412134|111\r\n110102|33534|343255|222\r\n[SITRBEND]\r\n";
String arr[] = str.split("(?<!^)(?=\\[.*?\\])");
for(int i=0;i<arr.length;i++){
System.out.println(">>>>>>>>>>>>>>>>>>>>>>");
System.out.println(arr[i]);
}
}