2

私の問題は、Tomcat ローカルホストにファイルを書き込むことができることですが、ホスティング サーバーにアップロードすると、ディレクトリのどこにも表示されず、リンクから取得できません。404 応答が返ってきます。

ファイルを作成するとき、私はこのコードを使用しました:

    public class FileObject {
    String path;
            File uploadFile;
            public FileWriter fstream;

public void createFoler(String path){
    this.path=path;
    File newFolder = new File(path);
    try{
                if(newFolder.mkdirs()){
                    System.out.println();
                }
                else{

                }
            } catch(Exception e){
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    System.out.println(newFolder.getAbsolutePath());
}
public void createFile(String file){
        try {
    String fullpath= path + File.separator + file;
    //fstream = new FileWriter(fullpath);
            fstream = new FileWriter(file);
        } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        }catch(Exception e){
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

パスについては、次のコードを使用してルートパスを取得します。

      String rootPath = request.getRealPath(this.toString()).substring(0,request.getRealPath(this.toString()).lastIndexOf(File.separator));
   FileObject fo = new FileObject();
    //        fo.createFoler( "webDatabase");
   fo.createFoler(rootPath+File.separator+ "webDatabase");
   fo.createFile("webDatabase.txt");

私もこれを使用しようとしました:

   fo.createFoler("");
   fo.createFile("webDatabase.txt");

しかし、それもうまくいきませんでした。

4

1 に答える 1

0

FileObjectコードの代わりにこのコードを試してください

File directory = new File(rootPath+File.separator+ "webDatabase");
directory.mkdirs();
File file = new File(directory, "webDatabase.txt");
FileOutputStream fos = new FileOutputStream(file);
fos.write(); // You content writing here
fos.close();
于 2012-12-06T09:28:08.483 に答える