提示“一个或多个文件超出系统文件大小限制,这些文件无法被正确保存”,应该怎么解决?

提示“一个或多个文件超出系统文件大小限制,这些文件无法被正确保存”,应该怎么解决?

说明文件系统是FAT32而且下载文件大于4G。

解决方法:把文件系统转换为NTFS文件系统。

 

FAT32转换为NTFS图文教程,一步一步教你如何将FAT32转换为NTFS文件系统。

步骤:

  1. 假设需要转换的分区为 E 盘,请先关闭所有E盘上的程序,关闭所有打开E盘文件的程序,以免转换过程中出错
  2. E盘重命名
    FAT32转换为NTFS文件系统
  3. 假设重命名为ABC
    FAT32转换为NTFS文件系统
  4. 在桌面上新建快捷方式
    FAT32转换为NTFS文件系统
  5. 新建快捷方式目标为cmd,点“下一步”继续
    FAT32转换为NTFS文件系统
  6. 快捷方式名字随意,点“完成”
    FAT32转换为NTFS文件系统
  7. 在刚才新建的快捷方式上点鼠标右键,选择“以管理员身份运行”
    FAT32转换为NTFS文件系统
  8. 输入 convert E: /fs:ntfs 并回车确认
    (注意:黄底字母表示需要转换的盘符,全部是英文冒号)
    FAT32转换为NTFS文件系统
  9. 提示输入卷标,输入第3步里面设置的E盘卷标,假设为ABC
    FAT32转换为NTFS文件系统
  10. 如果提示“正在被另一程序使用”,说明第1步没有做好。如果没有出现此提示,转换会按照第11步的图示顺利进行。
    此时,你可以再检查一下哪些程序占用了E盘,关闭这些程序。
    FAT32转换为NTFS文件系统
    如果你确定没有风险,可以输入y并回车,进行强制卸载和转换
  11. 转换完成
    FAT32转换为NTFS文件系统

转换为ntfs文件系统后请重新打开μTorrent,进行下载。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过以下方式实现: 1. 创建一个自定义的 `ItemStream` 实现类,例如 `MyItemStreamWriter`,来实现 `AbstractItemStreamItemWriter` 接口。 2. 在 `MyItemStreamWriter` 定义一个变量来跟踪当前文件大小,并在 `write` 方法判断当前文件是否已经超出了指定大小。 3. 如果超出了指定大小,则关闭当前文件,打开一个新的文件,并将新文件的名称保存到变量。 4. 在 `MyItemStreamWriter` 的 `open` 方法,检查是否存在上一个未完成的文件(比如程序异常退出导致的未完成文件),如果存在,则将其删除。 5. 在 `MyItemStreamWriter` 的 `close` 方法,关闭当前文件并清空变量。 6. 在 Spring Batch 的 job 配置,将 `MyItemStreamWriter` 注入到对应的步骤。 7. 在 `lineAggregator` 定义如何将一个对象转换为一行文本,以便写入文件。 下面是一个简单的实现示例: ```java public class MyItemStreamWriter<T> extends AbstractItemStreamItemWriter<T> { private long maxFileSize; // 最大文件大小 private String prefix; // 文件名前缀 private String suffix; // 文件名后缀 private int fileIndex; // 当前文件编号 private long currentFileSize; // 当前文件大小 private PrintWriter writer; // 当前文件的写入器 public MyItemStreamWriter(long maxFileSize, String prefix, String suffix) { this.maxFileSize = maxFileSize; this.prefix = prefix; this.suffix = suffix; } @Override public void open(ExecutionContext executionContext) throws ItemStreamException { super.open(executionContext); fileIndex = 0; currentFileSize = 0; String fileName = getFileName(); File file = new File(fileName); if (file.exists()) { file.delete(); } try { writer = new PrintWriter(new FileWriter(file)); } catch (IOException e) { throw new ItemStreamException("Failed to open file " + fileName, e); } } @Override public void write(List<? extends T> items) throws Exception { for (T item : items) { String line = lineAggregator.aggregate(item); writer.println(line); currentFileSize += line.getBytes().length; if (currentFileSize > maxFileSize) { closeCurrentFile(); openNewFile(); } } } @Override public void close() throws ItemStreamException { super.close(); closeCurrentFile(); } private void closeCurrentFile() { if (writer != null) { writer.close(); writer = null; } currentFileSize = 0; } private void openNewFile() { fileIndex++; String fileName = getFileName(); File file = new File(fileName); if (file.exists()) { file.delete(); } try { writer = new PrintWriter(new FileWriter(file)); } catch (IOException e) { throw new ItemStreamException("Failed to open file " + fileName, e); } } private String getFileName() { return prefix + "-" + fileIndex + suffix; } } ``` 在上面的代码,我们通过 `maxFileSize` 变量来指定文件的最大大小,通过 `prefix` 和 `suffix` 变量来指定文件名的前缀和后缀。在 `write` 方法,我们通过 `currentFileSize` 变量来跟踪当前文件大小,当超过指定大小时,就会关闭当前文件并打开一个新的文件。 在 Spring Batch 的 job 配置,我们可以这样使用: ```xml <batch:step id="writeStep"> <batch:tasklet> <batch:chunk reader="itemReader" writer="myItemStreamWriter" commit-interval="100"/> </batch:tasklet> </batch:step> <bean id="myItemStreamWriter" class="com.example.MyItemStreamWriter"> <property name="maxFileSize" value="1073741824"/> <!-- 1GB --> <property name="prefix" value="output"/> <property name="suffix" value=".txt"/> <property name="lineAggregator"> <bean class="org.springframework.batch.item.file.transform.PassThroughLineAggregator"/> </property> </bean> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值