java.io.FileNotFoundException: (No such file or directory) when running from eclipse

浪尽此生 提交于 2019-12-05 20:36:03

问题


I am writing to a file and want console output,

// TODO Create a game engine and call the runGame() method
public static void main(String[] args) throws Exception { 
    NewGame myGame = new TheGame().new NewGame();
    myGame.runGame();
    PrintStream out = new PrintStream(new FileOutputStream("output.txt"));
    System.setOut(out);
}

This gives me console output, but it throws the following exception:

java.io.FileNotFoundException: TheGame.txt (No such file or directory)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:138)
    at game.main(TheGame.java:512)

The file does exist.


回答1:


The file should be in contained within the root of your project.

When you execute a project in eclipse, the working directory is the most top level of your project.

Right click your project, click New>File, and make a txt file called "TheGame.txt".




回答2:


// Save Image Code
btnsave = (ImageButton) findViewById(R.id.imageButton1);
btnsave.setOnClickListener(new View.OnClickListener(){

    @Override
    public void onClick(View v){
        //String state = Environment.getExternalStorageState();
        URL url=null;
        try {
            url = new URL (testimage);
        } catch (MalformedURLException e2) {
            // TODO Auto-generated catch block
            e2.printStackTrace();
        } 

        try {
            input = url.openStream();
        } catch (IOException e2) {
            // TODO Auto-generated catch block
            e2.printStackTrace();
        } 

        String root = Environment.getExternalStorageDirectory().toString();

        File newDir = new File(root + "/KalyanPusti_Images");
        newDir.mkdirs();

        int n = 10000;
        Random gen = new Random();
        n = gen.nextInt(n);
        String fotoname = tittle+".jpg";

        File file = new File (newDir, fotoname);

        try {     
            File storagePath = Environment.getExternalStorageDirectory();
            FileOutputStream output = new FileOutputStream (file);

            try {         
                byte[] buffer = new byte[15000];         
                int bytesRead = 0;         
                while ((bytesRead = input.read(buffer, 0, buffer.length)) >= 0){
                    output.write(buffer, 0, bytesRead);         
                }  
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }   
            finally{         
                try {
                    output.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }     
            } 
        } catch (FileNotFoundException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }

        finally{     
            try {
                input.close();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } 
        }  
    }  
}); 

public File getTempFile(Context context, String url) {
    File file =null;
    try {
        String fileName = Uri.parse(url).getLastPathSegment();
        file = File.createTempFile(fileName, null, context.getCacheDir());
    } catch (IOException e) {
         // Error while creating file
    }
    return file;
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.fullimage, menu);
    return true;
}


来源:https://stackoverflow.com/questions/18709334/java-io-filenotfoundexception-no-such-file-or-directory-when-running-from-ecl

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!