我在collect()方法调用(或toList()调用)上获得UnmappableCharacterException:
private static void handleTransaction(Path a_filePath, String a_sTrasactionName, String a_sTransactionFilePath) {
// read file into stream, try-with-resources
try (Stream<String> stream = Files.lines(Paths.get(a_filePath.toString()), Charset.defaultCharset())) {
List<String> list =
stream.filter(line -> (line.indexOf(a_sTrasactionName) > 0))
.collect(Collectors.toList());
list.forEach(line -> {
System.out.println(line);
try (BufferedWriter writer = Files.newBufferedWriter(Paths.get(_FILES_PATH + a_sTransactionFilePath),Charset.defaultCharset(), StandardOpenOption.APPEND)) {
writer.write(line + "\n");
} catch (IOException e) {
e.printStackTrace();
}
});
} catch (IOException e1) {
e1.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
它对我有用,但从那时起从未如此.
我读的文件是在solaris上创建的csv文件.我在Windows 2012服务器上运行jar
你能告诉我吗?
谢谢.
public class demo {
public static void main(String[] args) {
for(int k = 2029; k<=2360 ; k++)
{
System.out.print(k+ " "+(char)k+" ");
}
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
2029 ? 2030 ? 2031 ? 2032 ? 2033 ? 2034 ? 2035 ? 2036 ? 2037 ? 2038 ? 2039 ? 2040 ? 2041 ? 2042 ? 2043 ? 2044 ? 2045 ? 2046 ? 2047 ? 2048 ? 2049 ? 2050 ? 2051 ? 2052 ? 2053 ? 2054 ? 2055 ? …
我有内容存储在Postgres数据库中,现在每次我调用内容以便使用php显示它,我在IE中获得有趣的方块和Firefox中有趣的方形问号?
以下示例
* - March ? May 2009
Run Code Online (Sandbox Code Playgroud)
我该如何删除?
我没有访问服务器所以无法调整那里的编码,只有postgres数据库详细信息和FTP访问上传我的文件
我正在实现一个像这样工作的软件:
我有一台运行vt100终端应用程序的Linux服务器输出文本.我的程序telnet服务器并读取/解析文本的位到相关数据.相关数据被发送到由Web服务器运行的小客户端,该Web服务器在HTML页面上输出数据.
我的问题是某些特殊字符如"åäö"被输出为问号(经典).
背景:
我的程序使用Apache Commons TelnetClient读取字节流.字节流被转换为字符串,然后相关的位被子字符串,并返回到分隔符字符.在此之后,新字符串将转换回字节数组,并使用Socket发送到Web服务器运行的客户端.此客户端根据接收的字节创建一个字符串,并将其打印在标准输出上,Web服务器从中读取并输出HTML.
第1步:byte [] - > String - > byte [] - > [发送到客户端]
Step2:byte [] - > String - > [print output]
问题:
当我在Windows上运行我的Java程序时,所有字符(包括"åäö")都会在生成的HTML页面上正确输出.但是,如果我在Linux上运行程序,所有特殊字符都会转换为" ? "(问号).
Web服务器和客户端当前正在Windows上运行(步骤2).
代码:
程序基本上是这样的:
我的节目:
byte[] data = telnetClient.readData() // Assume method works and returns a byte[] array of text.
// I have my reasons to append the characters one at a time using a StringBuffer.
StringBuffer buf = new StringBuffer();
for (byte b : …Run Code Online (Sandbox Code Playgroud) 在我的Android应用程序中,我正在尝试显示德语文本.öäüß这些角色无法显示TextView.如果有人知道如何设置字体或如何显示字符让我知道.我从服务中收到的数据.
从字节数组创建String时遇到问题,在构造字符串时忽略数组内的0值.我怎样才能使它如果字节值为0,String只是添加一个空格而不是删除它.
例如,这是输出DT_TestTracelineCTestTraceli.
public static void main(String[] args) {
byte[] text = {68, 84, 95, 84, 101, 115, 116, 84, 114, 97, 99, 101, 108, 105, 110, 101, 0, 0, 0, 0, 67, 84, 101, 115, 116, 84, 114, 97, 99, 101, 108, 105};
System.out.println(new String(text));
}
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做,所以我可以使用制表符分隔这两个字符串或使用空格,以便输出 DT_TestTraceline CTestTraceli
谢谢
我有一个文本文件,在FreeBSD与Windows中打开时显示不同.
在FreeBSD上:An·lisiseInvestigaciÃ> n
在Windows上:AnálisiseInvestigación
窗口表示显然是正确的.关于如何在bsd中获得结果的任何想法?
我尝试使用PHP mail函数发送带有非英文字符的文本电子邮件.但相反,我的消息与搞笑的垃圾字符.我如何解决它?
我用这段代码:
function _mail($to, $subject, $content)
{
$headers = 'From: info@example.com' . "\r\n" .
'Reply-To: info@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $content, $headers);
}
Run Code Online (Sandbox Code Playgroud)
一些人物出现问号......
我们知道java遵循unicode系统,它支持多种语言的所有字母表.我搜索并发现अ的Unicode值是2309,आ的值是2310,它们是DEVANAGRI语言的字母表.我写的代码是这样的.
class Test
{
public static void main(String args[])
{
char a=(char)2310;
System.out.println(a);
}
}
Run Code Online (Sandbox Code Playgroud)
没问题我写2309或2310的输出是'?' 总是.这是怎么回事?
我想知道Linux如何cat解码文件。假设它是一个英文文本文件,该命令似乎使用ASCII解码,但是如何cat解码随机文件呢?