Unicode 使用Groovy,如何读取ASCII格式的文件?

Unicode 使用Groovy,如何读取ASCII格式的文件?,unicode,groovy,ascii,Unicode,Groovy,Ascii,我需要读取一个文本文件,然后将其作为ASCII传递给另一个方法。我是Groovy的新手,这一次我被推特了 如果我这样做: String pubKey = new File(textFileLocation).text 结果不是ASCII字符,因为目标方法抛出了一个异常。如果我将该值剪切并粘贴为字符串文字,而不是从文件中读取它,则效果很好 请注意,Linux表示它是一个ASCII文件: 123@456 529 squirb $ file ~/sometext.txt /home/123/456

我需要读取一个文本文件,然后将其作为ASCII传递给另一个方法。我是Groovy的新手,这一次我被推特了

如果我这样做:

String pubKey = new File(textFileLocation).text
结果不是ASCII字符,因为目标方法抛出了一个异常。如果我将该值剪切并粘贴为字符串文字,而不是从文件中读取它,则效果很好

请注意,Linux表示它是一个ASCII文件:

123@456 529 squirb $ file ~/sometext.txt 
/home/123/456/sometext.txt: ASCII text, with very long lines

您是否尝试将ASCII字符集作为
新文件(textFileLocation)获取文本。getText('US-ASCII')
?请发布异常堆栈跟踪。文件的大小是多少?为什么Linux说它有“很长的行”?一旦你把它放在一个字符串中,它就不再是ASCII,而是Unicode,因为JVM中的所有字符串都是Unicode(UTF-16)。您应该将getText与字符集一起使用(正如dmahapatro建议的那样),或者将其作为一组字节(使用getBytes)。为了响应Michael Easter,我在gmaven中使用Jasypt来加密/解密属性,使用随机生成的密钥作为pw加密的pw。它足以满足我们的需求,而不会对开发人员造成太大的负担,也就是说,他们不必在每次构建时都输入creds。首先,对于严格用于测试的资源来说,加密是过度的,但我们确实需要满足以下要求:-/我现在知道如何解决这个问题,但不知道确切的原因。如果在第一行后面加上:pubKey=newstring(pubKey);例外消失了,一切都很好。奇怪的