java - UTF-8 不适用于 Java zipOutputStream
问题描述
我正在使用 .csv 生成一个包含 csv 的 zip 文件ZipOutputStream
。我已经通过了编码 UTF-8 但问题是德语变音符号没有正确压缩。未压缩时,它们不会正确显示在文件中。
我不确定问题是压缩本身还是解压缩。
与此问题相关的所有主题主要是关于文件名中的特殊字符,但对我而言,问题出现在数据中。
val zos = ZipOutputStream (outputStream, StandardCharsets.UTF_8)
val entry = ZipEntry("file1.csv")
zos.putNextEntry(entry)
val writer = CsvWriter(zos)
for (entr in data)
writer.appendRow {entr.forEach { write(it) }}
zos.closeEntry()
zos.close()
解决方案
从文档:
charset - 用于对条目名称和注释进行编码的字符集
因此,设置 UTF-8 对已经必须是字节流的内容没有任何影响。
问题必须发生在CsvWriter
.
推荐阅读
- javascript - 如何在 Mongoose 查询中使用查询对象?
- amazon-web-services - 列的数据类型在粘合数据目录和 getCatalogSource 函数中有所不同
- python - 如何使用 Revit API 获取轴属性?
- mvvmcross - 使用此基本 ctor 从应用程序导航到基本视图模型的问题
- delphi - 在 Delphi 中对静态数组进行类型转换
- ios - 对于苹果的应用审查,我应该提供一个 testflight 的测试用户帐户吗?
- r - R - 每次从一列中的一个单元格在另一列中的每个单元格上运行
- csv - 如何在 Visual Studio Code 中删除嵌入的超链接
- android - 如何在 WallpaperService 上重用 SurfaceHolder,
- facebook - 如何根据帖子创建 Facebook 广告?