当前位置: 代码迷 >> J2SE >> 怎样从定长的文本文件中取出指定的字段,并显示出来,多谢
  详细解决方案

怎样从定长的文本文件中取出指定的字段,并显示出来,多谢

热度:244   发布时间:2016-04-24 17:20:13.0
怎样从定长的文本文件中取出指定的字段,并显示出来,谢谢!
有这样一个文本文件,每条记录都是56,有数字3位,汉字20,数字3。格式如下:
101中华人民共和国             300
102中国人民                         510
我用substring(4,20)取第一行的汉字字符串,出现错误:
exception   in   thread   "main "   java.lang.StringIndexOutOfBoundsException:
Sting   index   out   of   range:20
请问怎样才能取出   中华人民共和国   这个字符串,谢谢!


------解决方案--------------------
我试了一下,上一个用unicode取出来的好像不对,
换成GBK吧。

byte[] bs = s.getBytes( "GBK ");
new String(bs, 3, 20, "GBK ");

不过比较奇怪,unicode应该是正确的,GBK在字符串包含非GBK字符时会有错,(比如日文字符)。