JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Servlet/JSP 討論區  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友   
reply to topicthreaded modego to previous topicgo to next topic
本主題所含的標籤
作者 在Tomcat平台上執行存取檔案的class顯示java.io.FileNotFoundException:(存取被拒。)的錯誤
wllai2001





發文: 4
積分: 0
於 2009-07-05 15:56 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
//以下為程式碼
 
import java.io.*;
 
public class CopyModel {
 
  String sourcePath;
  String targetPath;
  String sourceFile;
 
  public CopyModel(String sourcePath, String sourceFile, String targetPath){
    this.sourcePath=sourcePath;
    this.sourceFile=sourceFile;
    this.targetPath=targetPath;
  }
 
  public void doCopy(){
    try{
      File source = new File(sourcePath+sourceFile);
      File target = new File(targetPath+sourceFile);
      System.out.println("Source:"+source+"\t->Readding...");
      String reader="";
 
      FileReader fr =new FileReader(source);
      FileWriter fw =new FileWriter(target);
 
      BufferedReader fis = new BufferedReader(fr);
      BufferedWriter fos = new BufferedWriter(fw);
      System.out.println("Source:"+source+"\t->\tTarget:"+target);
      while ((reader = fis.readLine()) != null) {
        fos.write(reader);
        fos.newLine();
      }
 
//    FileInputStream fis = new FileInputStream(source);
//    FileOutputStream fos = new FileOutputStream(targetPath);
 
//    byte data[]=new byte[fis.available()];
//
//    fis.read(data);
//    fos.write(data);
 
//    System.out.println("Source:"+source+"\t->\tTarget:"+target);
 
      fis.close();
      fos.close();
    }
    catch(Exception e){System.out.println(e);}
 
  }
}
 
//============================================

OS為WINXP,在Tomcat5.5平台上,
若使使用FileWriter跟Reader去做檔案的複製是OK的,
但如此一來只能存取文字檔,若非文字檔複製後會損壞,
但是如果使用FileOutStream存取就會顯示存取被拒的例外,
導致任何檔案都無法複製寫入硬碟,有大大能解答嗎>"<

註解掉的部分就是FileOutputStream被我換置掉的部分。

在下爬了很多文章說要設定存取權限的問題,
但是還是不是很懂,而且FileWriter可以正常建立程式為什麼FileOutputStream就不行呢>"<
感謝大大的解答,感謝。

錯誤訊息是
java.io.FileNotFoundException: D:\0.txt(存取被拒。)
如果我存取D:\0.txt的話

不過如果是用FileWriter跟FileReader去做的話就能夠正常執行,
上面的程式碼是能夠正常執行的狀態。


wllai2001 edited on 2009-07-05 16:04
reply to postreply to post
作者 Re:在Tomcat平台上執行存取檔案的class顯示java.io.FileNotFoundException:(存取被拒。)的錯誤 [Re:wllai2001]
koji

秒速5センチメートル

站長

發文: 8339
積分: 19
於 2009-07-05 16:11 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
為何寫入時
用stream是targetPath
而用writer時是targetPath+ sourceFile

koji


reply to postreply to post
Facebook上的TWJUG社團,歡迎加入
作者 Re:在Tomcat平台上執行存取檔案的class顯示java.io.FileNotFoundException:(存取被拒。)的錯誤 [Re:koji]
wllai2001





發文: 4
積分: 0
於 2009-07-05 16:20 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
謝謝大大的指教...果然是在下眼殘了...謝謝大大...

連續搞了一個禮拜在WEB-Base上練習寫TotaCommander寫到眼花了,

真不好意思...

1
FileOutputStream fos = new FileOutputStream(targetPath);


這行應該是

1
FileOutputStream fos = new FileOutputStream(target);

才對...謝謝大大,真的很感謝您。


reply to postreply to post
作者 Re:在Tomcat平台上執行存取檔案的class顯示java.io.FileNotFoundException:(存取被拒。)的錯誤 [Re:wllai2001]
koji

秒速5センチメートル

站長

發文: 8339
積分: 19
於 2009-07-05 16:30 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
所以可以了?

koji


reply to postreply to post
Facebook上的TWJUG社團,歡迎加入
作者 Re:在Tomcat平台上執行存取檔案的class顯示java.io.FileNotFoundException:(存取被拒。)的錯誤 [Re:koji]
wllai2001





發文: 4
積分: 0
於 2009-07-05 16:35 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
真不好意思...是的,
由於路徑的錯誤沒有指定檔案名稱,只有路徑名稱,
導致存取被拒...

一直往存取權限的問題去找,結果沒想到是基本的東西出問題,
真不好意思,謝謝你。


reply to postreply to post
» JWorld@TW »  Servlet/JSP 討論區

reply to topicthreaded modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8