substring数组越界_我在java中使用substring()总是出现越界的情况,求指教啊~~~~~~

我在java中使用substring()总是出现越界的情况,求指教啊~~~~~~inti=0;JFileChooserfc=newJFileChooser();fc.showSaveDialog(null);Filefile=fc.getSelectedFile();//获取所选的文件名...

我在java中使用substring()总是出现越界的情况,求指教啊~~~~~~

int i=0;

JFileChooser fc=new JFileChooser();

fc.showSaveDialog(null);

File file=fc.getSelectedFile(); //获取所选的文件名

FileWriter fw;

try {

fw = new FileWriter(file);

BufferedWriter bw=new BufferedWriter(fw);

String text=tatext.getText().toString();//tatext为一个文本域

String line="";

while(text!=null)

{

i=0;

System.out.println("text的长度:"+text.length());

while(i>-1&&i

{

i++;

System.out.println("i="+i);

}

System.out.println("回车!!!");

line=text.substring(0, i);

System.out.println("line="+line);

text=text.substring(i+1);//提示错误

System.out.println("text="+text);

bw.write(line);

bw.newLine();

}

bw.close();

fw.close();

} catch (FileNotFoundException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

} catch (IOException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

打印结果:

text的长度:8

i=1

回车!!!

line=a

text=bb

ccc

text的长度:6

i=1

i=2

回车!!!

line=bb

text=ccc

text的长度:3

i=1

i=2

i=3

回车!!!

line=ccc

Exception in thread "AWT-EventQueue-0" java.lang.StringIndexOutOfBoundsException: String index out of range: -1

at java.lang.String.substring(String.java:1938)

at java.lang.String.substring(String.java:1905)

at GUI.actionPerformed(GUI.java:155)

at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)……

展开

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值