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)
。任何人都可以轻松帮助我克服这个问题吗?
答案 0 :(得分:1)
代码只有一个try
块。
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){
}
答案 1 :(得分:1)
我编辑了代码并修复了缩进 - 每次编写代码时都应该这样做。正如您现在所看到的,您正在关闭try-catch块然后执行更多代码。
然后你关闭了方法 - 之后你就拥有了catch(FileNotFoundException e)
。方法完成后会出现此catch
块 - 因此需要成员变量或其他方法 - 因此您会收到此错误。
由于我不了解你的逻辑,我不能告诉你它需要什么 - 但现在的方式,这肯定是错的。
答案 2 :(得分:0)
您的代码无法正常工作,您忘记声明“fileinputstream”并且您的try-catch无效。您尝试在两个catch-Blocks之间编写代码。