在函数内部处理 IOException
Handle IOException inside function
我有一种方法可以使用 FileUtils 库将一些文件从共享内存复制到应用程序内部内存。
目标是处理 IOException 以避免应用程序崩溃:如果某些文件未从总数中复制出来,这是可以接受的。
在下面的第二个代码片段中,调用了处理异常的方法。
我需要知道两件事:
a) 有没有办法只在被调用的方法中处理异常
调用代码中也不?
b) 您认为异常处理是正确的,还是我需要添加一些其他代码?
代码如下:
try {
copyfilesfromshared(context);
} catch (IOException e) {
e.printStackTrace();
}
public void copyfilesfromshared(Context context) throws IOException {
for (int ii = 0; ii < numfiles; ii++) {
try {
FileUtils.copyFileToDirectory(files[ii], dirwrite);
} catch (IOException e) {
e.printStackTrace();
}
}
}
is there a way to handle the exception only in the called method and not also in the calling code?
如果您在 copyfilesfromshared()
函数中处理异常,则无需声明 throws IOException
public void copyfilesfromshared(Context context) {
for (int ii = 0; ii < numfiles; ii++) {
try {
FileUtils.copyFileToDirectory(files[ii], dirwrite);
} catch (IOException e) {
e.printStackTrace();
}
}
}
然后就可以正常使用了,不用再声明try {...} catch(...)
:
copyfilesfromshared(context);
in your opinion the exception handling is correct or do I need to add some other code?
这对我来说很好,但最好检查 FileUtils.copyFileToDirectory
的签名,如果它也抛出任何其他异常,您可能也想在这里捕获。
除此之外,你想处理异常完全在你这边,但一般来说越早越好。
嘿嘿,
第一个问题
a) is there a way to handle the exception only in the called method
and not also in the calling code?
从被调用的方法中抛出 IOException 或者
在方法中实现 try/catch。
这就是你的问题
您选择了两个选项,而不是一个,所以只选择一个。
还有关于2个问题
b) in your opinion the exception handling is correct or do I need to
add some other code?
此时异常处理最好,所以不要想其他想法
仅此而已!
我有一种方法可以使用 FileUtils 库将一些文件从共享内存复制到应用程序内部内存。
目标是处理 IOException 以避免应用程序崩溃:如果某些文件未从总数中复制出来,这是可以接受的。
在下面的第二个代码片段中,调用了处理异常的方法。
我需要知道两件事:
a) 有没有办法只在被调用的方法中处理异常 调用代码中也不?
b) 您认为异常处理是正确的,还是我需要添加一些其他代码?
代码如下:
try {
copyfilesfromshared(context);
} catch (IOException e) {
e.printStackTrace();
}
public void copyfilesfromshared(Context context) throws IOException {
for (int ii = 0; ii < numfiles; ii++) {
try {
FileUtils.copyFileToDirectory(files[ii], dirwrite);
} catch (IOException e) {
e.printStackTrace();
}
}
}
is there a way to handle the exception only in the called method and not also in the calling code?
如果您在 copyfilesfromshared()
函数中处理异常,则无需声明 throws IOException
public void copyfilesfromshared(Context context) {
for (int ii = 0; ii < numfiles; ii++) {
try {
FileUtils.copyFileToDirectory(files[ii], dirwrite);
} catch (IOException e) {
e.printStackTrace();
}
}
}
然后就可以正常使用了,不用再声明try {...} catch(...)
:
copyfilesfromshared(context);
in your opinion the exception handling is correct or do I need to add some other code?
这对我来说很好,但最好检查 FileUtils.copyFileToDirectory
的签名,如果它也抛出任何其他异常,您可能也想在这里捕获。
除此之外,你想处理异常完全在你这边,但一般来说越早越好。
嘿嘿,
第一个问题
a) is there a way to handle the exception only in the called method and not also in the calling code?
从被调用的方法中抛出 IOException 或者 在方法中实现 try/catch。
这就是你的问题 您选择了两个选项,而不是一个,所以只选择一个。
还有关于2个问题
b) in your opinion the exception handling is correct or do I need to add some other code?
此时异常处理最好,所以不要想其他想法
仅此而已!