使用 Gradle 进行转码
Transcoding with Gradle
我的 build.gradle 文件从模板为我的 Java 项目生成 UNIX 和 Windows 启动器脚本。
模板是 UTF-8 编码的,生成的脚本也是 UTF-8 编码的。在普遍支持 UTF-8 的 Linux 上这不是问题,但是 Windows 在 cmd.exe 终端 window 中显示非 Latin-1 字符时存在一些问题。阅读 后,我得出一个结论,将生成的 UTF-8 脚本转换为 cp1250(在我的例子中)会在显示匈牙利语文本时省去很多麻烦。但是我不知道如何将 UTF-8 文件转换为其他代码页(查看副本,但没有找到指定输出编码的方法。)
只需在构建文件中使用 FileUtils from Apache Commons IO。
import org.apache.commons.io.FileUtils
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath("commons-io:commons-io:2.8.0")
}
}
然后,在脚本的相关部分,生成启动器脚本的地方:
File f = file('/path/to/windows-launcher')
// Reading the content as UTF-8
String content = FileUtils.readFileToString(f, 'UTF-8')
// Rewriting the file as cp1250
FileUtils.write(f, content, "cp1250")
我的 build.gradle 文件从模板为我的 Java 项目生成 UNIX 和 Windows 启动器脚本。
模板是 UTF-8 编码的,生成的脚本也是 UTF-8 编码的。在普遍支持 UTF-8 的 Linux 上这不是问题,但是 Windows 在 cmd.exe 终端 window 中显示非 Latin-1 字符时存在一些问题。阅读
只需在构建文件中使用 FileUtils from Apache Commons IO。
import org.apache.commons.io.FileUtils
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath("commons-io:commons-io:2.8.0")
}
}
然后,在脚本的相关部分,生成启动器脚本的地方:
File f = file('/path/to/windows-launcher')
// Reading the content as UTF-8
String content = FileUtils.readFileToString(f, 'UTF-8')
// Rewriting the file as cp1250
FileUtils.write(f, content, "cp1250")