- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试读取一个大 (700GB) 文件并逐步处理它,但我正在使用的网络偶尔会出现故障,从而切断对文件的访问。这抛出一个 java.io.IOException 告诉我“指定的网络名称不再可用”。有没有一种方法可以捕捉到这个异常并等待,比如说,十五分钟,然后重试读取,或者一旦失去对文件的访问权限,Reader 对象是否被炸毁?
如果连接断开后 Reader 变得无用,有没有一种方法可以重写它以允许我“保存我的位置”,然后从那里开始我的阅读而不必阅读和阅读丢弃之前的所有数据吗?当有 500GB 的数据通过时,即使只是大嚼数据而不进行处理也需要很长时间。
目前,代码看起来像这样(为简洁起见进行了编辑):
class Processor {
BufferedReader br;
Processor(String fname) {
br = new BufferedReader(new FileReader("fname"));
}
void process() {
try {
String line;
while((line=br.readLine)!=null) {
...code for processing the line goes here...
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
感谢您的宝贵时间。
最佳答案
您可以跟踪变量中读取的字节。例如,这里我在一个名为 read 的变量中进行跟踪,而 buff 是 char[]。不确定是否可以使用 readLine 方法。
read+=br.read(buff);
然后如果需要重启,可以跳过那么多字节
br.skip(read);
然后你就可以继续处理了。祝你好运
关于java - 从 IOException : network name no longer available 中恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8056947/
我在一个网站上工作,我的一侧有一段文字不完全适合,所以部分内容不可见,因为网站的底部在那里结束。我想让它可以滚动,这样我就可以通过向下滚动查看完整内容。 #header { z-index: 1; p
已经有很多关于使用 pivot longer 和 pivot wider 以我需要的方式 reshape 数据的问题,但没有一个能得到正确的答案。过去,我成功地结合使用了更长的旋转轴和更宽的旋转轴来获
我为客户开发了一个应用程序并交给了他。 他刚刚安装并正在使用它...... 现在我的许可证已经过期,现在他突然说他的应用程序说: {my_app}“不再可用” [ 注意:到目前为止他没有重新安装应用程
我有一个 flutter 项目,我必须在其中获取 IOS 版本。当我在 Android Studio 中尝试 Flutter->Build IOS 时,收到以下错误消息。 “CFURLRequestS
我使用的是 Wildfly 10.0.x。我正在将 ejb2.1 迁移到 ejb3.2这是我的 ejb-jar.xml 文件 www.cedar.com - Collaborative Plann
昨天,我正在使用 Instagram API 进行一些测试。我想设计一个网页,在其中显示我们帐户中的最新照片(有些像社交动态)。今天,我收到此错误:“用于身份验证的客户端不再处于事件状态。”。 有人知
所以我的代码中有一行是这样的 WebElement docDate = wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpa
嗨,伙计,我必须知道页面何时不再是当前页面。我认为我必须使用 Listener,我看到它存在: @Override public void onPageSelected(int
我有一个带有下拉菜单的简单导航栏,当用户将鼠标悬停在导航栏中其受尊重的链接上时,该菜单应该保留,但在用户将鼠标悬停在实际下拉菜单而非其链接上后,我无法使其保留。我试过创建一个 :hover在实际下拉列
我正在尝试测试我的应用程序如何处理被 Android ActivityManager 销毁(以及稍后由 Alarm 事件重新启动)。换句话说,我想强制消息: I/ActivityManager( 3
我在 UITextView 上有一个观察者来检测它的内容大小是否在变化: [_textView addObserver:self forKeyPath:@"contentSize"options:NS
我在 Android O 及更高版本中尝试运行我的 JobIntentService 时遇到以下问题,我很难重现该问题: Caused by java.lang.SecurityException:
我编写了一个 iOS 应用程序,我在其中非常成功地使用了 CGLayer。在研究从该应用程序中获得更多性能的方法时,我看到了这篇博文:http://iosptl.com/posts/cglayer-n
我有这个配置 包中的位置 com.x.record.persistence.impl 我有一个组件需要来自 com.x.record.persistence.repo 的存储
我的函数,用来计算给定的频率、频率、功率。我想对它进行矢量化,这样它就可以计算频率、FWHM和AMP:。计时:。我在lorz1和lorz2中的向量化哪里出了问题?他们不是应该比洛兹3更快吗?
我的函数计算洛伦兹给定频率,fwhm,amp。我想对它进行矢量化,以便它计算频率,fwhm和amps的列表:。计时:。我在lorz1和lorz2中的向量化哪里出了问题?他们不是应该比洛兹3更快吗?
我想 pivot_long() 下面数据集的多列避免硬编码。我看过一些类似的问题,但我仍然做不到。 宽数据: > head(data) ID IND_TEST_SCORE ARG_G1_A
我已经为此工作了大约一天半,并在网上搜索了大量博客和帮助文章。我在 SO 上发现了几个与此错误相关的问题,但我认为它们并不完全适用于我的情况(或者在某些情况下,不幸的是,我无法很好地理解它们以实现 :
我到处搜索这个,找不到它。 Apple 会恢复从销售中删除的应用内购买吗? 可以在 iTunesConnect -> Cleared for sale -> No. 上删除 IAP。 上个月我添加了一
我们在Android Studio 3.4.1中显示以下警告消息: WARNING: The following project options are deprecated and have bee
我是一名优秀的程序员,十分优秀!