求助大为大侠:

PpG_Grubby 2008-01-06 07:37:49
init:
deps-jar:
Compiling 1 source file to F:\JavaProject\DrawPad\build\classes
F:\JavaProject\DrawPad\src\DrawPad\DrawPad.java:535: 无法访问的语句
File fileName = fileChooser.getSelectedFile();
1 错误
生成失败(总时间:0 秒)
这个是什么问题啊 谢谢!!
附源码:

public void saveFile()
{
fileChooser=new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
int result=fileChooser.showSaveDialog(this);
if(result==JFileChooser.CANCEL_OPTION);
return;
File fileName = fileChooser.getSelectedFile(); fileName.canWrite();
if(fileName==null||fileName.getName().equals(""))
JOptionPane.showMessageDialog(fileChooser,"Invalid File Name",
"Invalid File Name",JOptionPane.ERROR_MESSAGE);
else{
try{
fileName.delete();
FileOutputStream fos=new FileOutputStream(fileName);
output=new ObjectOutputStream(fos);
drawings record;
output.writeInt(index);

for(int i=0;i<index;i++)
{
drawings p=itemList[i];
output.writeObject(p);
output.flush();
}
output.close();
fos.close();
}
catch(IOException ioe)
{
ioe.printStackTrace();

}
}

}
...全文
92 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
YeLang2007 2008-01-07
  • 打赏
  • 举报
回复
public void saveFile()
{
fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
int result = fileChooser.showSaveDialog(this);
if (result == JFileChooser.CANCEL_OPTION) {
return;
}
else {
File fileName = fileChooser.getSelectedFile();
fileName.canWrite();
if (fileName == null || fileName.getName().equals("")) {
JOptionPane.showMessageDialog(fileChooser, "Invalid File Name",
"Invalid File Name", JOptionPane.ERROR_MESSAGE);
}
else {
try {
fileName.delete();
FileOutputStream fos = new FileOutputStream(fileName);
output = new ObjectOutputStream(fos);
drawings record;
output.writeInt(index);

for (int i = 0; i < index; i++) {
drawings p = itemList[i];
output.writeObject(p);
output.flush();
}
output.close();
fos.close();
}
catch (IOException ioe) {
ioe.printStackTrace();

}
}
}
}
YeLang2007 2008-01-07
  • 打赏
  • 举报
回复

老兄有几处错误哦,你用我的与你自己的比较一下吧:



public void saveFile()
{
fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
int result = fileChooser.showSaveDialog(this);
if (result == JFileChooser.CANCEL_OPTION) {
return;
}
else {

File fileName = fileChooser.getSelectedFile();
fileName.canWrite();
if (fileName == null || fileName.getName().equals("")) {
JOptionPane.showMessageDialog(fileChooser, "Invalid File Name",
"Invalid File Name", JOptionPane.ERROR_MESSAGE);
}

else {
try {
fileName.delete();
FileOutputStream fos = new FileOutputStream(fileName);
output = new ObjectOutputStream(fos);
drawings record;
output.writeInt(index);

for (int i = 0; i < index; i++) {
drawings p = itemList[i];
output.writeObject(p);
output.flush();
}
output.close();
fos.close();
}
catch (IOException ioe) {
ioe.printStackTrace();

}
}
}
}




好好看看吧,你怎么if后面都不加这个呀{},写java代码的大忌哦!
cangyue87 2008-01-07
  • 打赏
  • 举报
回复
程序执行到return之后就会向上一级返回,也就是说会返回到调用saveFile() 的那个方法去...

这样看saveFile()方法中有永远也执行不到的语句...
网络咖啡 2008-01-06
  • 打赏
  • 举报
回复
return语句下面不能写代码了
梅小西Echo 2008-01-06
  • 打赏
  • 举报
回复
if(result==JFileChooser.CANCEL_OPTION); //这里多了个分号,把他去掉
return;
File fileName = fileChooser.getSelectedFile();
fileName.canWrite();

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧