JAVA中如何判斷一個文件是否存在,如果不存在則創建它?
求幫助
源碼如下:
public void SaveFile(String fileName,String content) throws IOException{
File file =new File(fileName);
if(!file.exists()){
System.out.println("不存在");
System.out.println(file.createNewFile());
file.createNewFile();
}
FileOutputStream fos = new FileOutputStream(file,true);
OutputStreamWriter out =new OutputStreamWriter(fos,"utf-8");
BufferedWriter bw = new BufferedWriter(out);
bw.write(content);
bw.write("\r\n");
bw.flush();
}
每次執行都提示我:
不存在
java.io.IOException: 系統找不到指定的路徑。
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:883)
at com.sdzw.test.dao.FilesDAO.SaveFile(FilesDAO.java:24)
at com.sdzw.test.dao.BaiduDAO.saveBaijia(BaiduDAO.java:126)
at com.sdzw.test.test.BaiduTest.RunBaidu(BaiduTest.java:35)
at com.sdzw.test.test.BaiduTest.main(BaiduTest.java:17)
非常感謝各位的幫助,小弟已經知道了。我這個地方最大的錯誤是我給的路徑是相對路徑,應該是絕對路徑。
現在小弟的思路是先獲取當前程序所在的絕對路徑(如: E:CSDN/Test/),然後添加上要新建的文件(/Demo1.txt),使之組成一個新的絕對路徑(E:CSND/Test/Demo1.txt)。不知道這個思路是否正確。
判斷一個文件是否存在,如果不存在則創建它,然後向此文件寫入指定的內容。
下面是完整代碼:
//-----------------------------------------------------------------------------------
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
public class FindFile {
public static void main(String[] args) throws IOException
{
new FindFile().saveFile("E:/test.txt", "test");
}
public void saveFile(String fileName,String content) throws IOException
{
File file =new File(fileName);
if(!file.exists())
{
System.out.println("不存在");
System.out.println(file.createNewFile());
file.createNewFile();
}
FileOutputStream fos = new FileOutputStream(file,true);
OutputStreamWriter out =new OutputStreamWriter(fos,"utf-8");
BufferedWriter bw = new BufferedWriter(out);
bw.write(content);
bw.write("\r\n");
bw.flush();
System.out.println("寫入成功!");
}
}
//-----------------------------------------------------------------------------------