我想只保存当前所选标签(Tab1 one)上的文字,我在netbeans的设计方面添加了该标签,并与我的新标签功能分开。
我的保存功能适用于标签1以外的所有其他标签。
如果选择了标签1,这是我的尝试并获取保存以从标签1收集文本:
public void Save_As()
{
fileChooserTest.setApproveButtonText("Save");
int actionDialog = fileChooserTest.showOpenDialog(this);
File fileName = new File(fileChooserTest.getSelectedFile() + ".txt" );
try{
if(fileName == null)
return;
BufferedWriter bw1 = new BufferedWriter(new FileWriter(fileChooserTest.getSelectedFile() + ".txt"));
String text = ((JTextArea)TabPane.getSelectedComponent()).getText();
if((TabPane.getTitleAt(TabPane.getSelectedIndex())).equals("Doc1.txt"))
{
bw1.write(this.TextArea.getText());
}
else
{
bw1.write(text);
bw1.close();
}
}
catch (IOException ex) {
}
}
答案 0 :(得分:0)
您忘了关闭BufferedWriter。只需添加一行即可关闭它将解决您的问题。
为了使它更好,你应该使用try ... catch ... finally,并将BufferedWriter.close()放在finally部分。
if((TabPane.getTitleAt(TabPane.getSelectedIndex())).equals("Doc1.txt"))
{
bw1.write(this.TextArea.getText());
bw1.close();// you need to close it here.
}
else
{
bw1.write(text);
bw1.close();
}