-4
 public class WriteByteArrayToFile {
    public static void main(String[] args)
    {
        String strFilePath = "C://Program Files/Java/jdk1.7.0_23/bin//s.excel";
        try
        {
            FileOutputStream fos = new FileOutputStream(strFilePath);
            int numberBytes = fileinputstream.available();
            byte bytearray[] = new byte[numberBytes];
            fileinputstream.read(bytearray);
            for(int i= 0;i < numberBytes;i++)
            {
                System.out.println(bytearray[i]);
            }
            fileinputstream.close();
        }
        catch(Exception e)
        {
            System.out.println(e);
            MyReader mr = new MyReader();
            mr.ReadFile("side1-60.java");
        }

        String strContent = "side1-60.java ";
        fos.write(strContent.getBytes());
        fos.close();
    }
    catch(FileNotFoundException e)
    {
        System.out.println("FileNotFoundException : " + ex);
    }
    catch(IOException ioe) {    
        System.out.println("IOException : " + ioe);
    }
}

これは私のコードです。illegal start of typeコンパイル時にエラーが発生します。特にcatch(FileNotFoundException e). 誰でもこれを克服するのを手伝ってくれますか?

4

3 に答える 3

1

tryブロックが 1 つしかないコード。

 catch(Exception e)
                    {
                    System.out.println(e);
        MyReader mr = new MyReader();
        mr.ReadFile("side1-60.java");           
        }

// このコードが問題を引き起こしているため、catch ブロックの継続コードはありません

    String strContent = "side1-60.java ";

     fos.write(strContent.getBytes());

     fos.close();

catch(FileNotFoundException f){
}
于 2013-05-17T09:20:57.117 に答える
1

私はあなたのコードを編集し、インデントを修正しました。これは、コードを書くたびに行うべきことです。ご覧のとおり、try-catch ブロックを閉じてから、さらにコードを実行しています。

次に、メソッドを閉じています-その後、catch(FileNotFoundException e). このcatchブロックは、メソッドが完了した後に表示されます。そのため、メンバー変数または別のメソッドが必要です。したがって、このエラーが発生します。

私はあなたの論理がわからないので、それがどうあるべきかは言えませんが、今のやり方では間違いなく間違っています。

于 2013-05-17T09:23:56.963 に答える
0

コードが機能しません。「fileinputstream」を宣言するのを忘れており、try-catch が有効ではありません。2 つの catch-Block の間にコードを記述しようとしました。

于 2013-05-17T09:29:12.300 に答える