java 读取文本后 分割成一个字符串数组问题。 java字符串分割 Sting count 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给 | 转义 String stringAb = new String("CALL_ID|AH|34"); String[] strings = stringAb.split("\\|"); for (String str : strings) { System.out.println(str); }结果CALL_IDAH34 字符串是这样分割。不是分割的问题。是分割后算一个字符串的count有问题,明明是7它却是8。好像是编码的问题。我用的windows记事本转的编码。转后的编码好像是utf-8 +bom而不是utf-8。不知道为什么java不支持utf-8 +bom。 长度应该没问题,楼主可以再试试 String stringAb = new String("CALL_ID|AH|34"); String[] strings = stringAb.split("\\|"); for (String str : strings) { System.out.println(str.length()); }结果722 长度应该没问题,楼主可以再试试 String stringAb = new String("CALL_ID|AH|34"); String[] strings = stringAb.split("\\|"); for (String str : strings) { System.out.println(str.length()); }结果722不是长度问题。你把CALL_ID|AH|34 放到txt文档里。然后另存为utf-8格式。再读出来分割。 "CALL_ID".equals(strings [0])结果为false。 楼主换个编辑器试试,换个notepad++,或editplus试试。我之前遇到过类似的情况,在notepad++ 里面输入一段字符串,然后分割后第一个字符串前面总有一个空格。但是 如果用windows默认的记事本的notepad记事本输入的话,就没有那个空格了。如果这个还有问题的话,那应该就是编码格式的问题了。 楼主换个编辑器试试,换个notepad++,或editplus试试。我之前遇到过类似的情况,在notepad++ 里面输入一段字符串,然后分割后第一个字符串前面总有一个空格。但是 如果用windows默认的记事本的notepad记事本输入的话,就没有那个空格了。如果这个还有问题的话,那应该就是编码格式的问题了。是的。已经试出来了。这个太坑爹了。一种格式,两种情况。 UTF-8 with BOM前3个字节必然是EFBBBF,它不是文件内容,所以你读的时候要去掉或者你不要用记事本编辑,换个能用UTF-8无BOM的,比如Editplus,或者你直接用Winhex这种软件把前面三个字节删除。。 急求一sql语句 急急急……求助 org.xml.sax.SAXParseException Java的开源Blog系统 请教tModel的问题。 struts如何实现动态添加文本框? hibernate查询问题 在JbuilderX下运行STRUTS应用,总是有错 XML文件解析失败:属性前要求有空白。 求教高手关于用JBUILDER6调试EJB的两个小问题 maven执行tomcat:run项目没有在tomcat里面运行 初学Struts,请教一个ActionContext问题 跪求用友北京java研发的工资和待遇如何?
String[] strings = stringAb.split("\\|");
for (String str : strings) {
System.out.println(str);
}结果CALL_ID
AH
34
字符串是这样分割。不是分割的问题。是分割后算一个字符串的count有问题,明明是7它却是8。
好像是编码的问题。我用的windows记事本转的编码。转后的编码好像是utf-8 +bom而不是utf-8。不知道为什么java不支持utf-8 +bom。
String[] strings = stringAb.split("\\|");
for (String str : strings) {
System.out.println(str.length());
}结果7
2
2
String[] strings = stringAb.split("\\|");
for (String str : strings) {
System.out.println(str.length());
}结果7
2
2
不是长度问题。你把CALL_ID|AH|34 放到txt文档里。然后另存为utf-8格式。再读出来分割。 "CALL_ID".equals(strings [0])结果为false。
我之前遇到过类似的情况,在notepad++ 里面输入一段字符串,然后分割后第一个字符串前面总有一个空格。
但是 如果用windows默认的记事本的notepad记事本输入的话,就没有那个空格了。如果这个还有问题的话,那应该就是编码格式的问题了。
我之前遇到过类似的情况,在notepad++ 里面输入一段字符串,然后分割后第一个字符串前面总有一个空格。
但是 如果用windows默认的记事本的notepad记事本输入的话,就没有那个空格了。如果这个还有问题的话,那应该就是编码格式的问题了。是的。已经试出来了。这个太坑爹了。一种格式,两种情况。
或者你不要用记事本编辑,换个能用UTF-8无BOM的,比如Editplus,或者你直接用Winhex这种软件把前面三个字节删除。。