English 中文(简体)
Java 输入Stream 和 UTF-8 字符集
原标题:Java InputStreamReader & UTF-8 charset

I 使用输入StreamReader 传输压缩图像 。 Inditler InputStream 用于图像的解压缩

InputStreamReader infis =
   new InputStreamReader(
      new InflaterInputStream( download.getInputStream()), "UTF8" );
do {
   buffer.append(" ");
   buffer.append(infis.read());
} while((byte)buffer.charAt(buffer.length()-1) != -1);

但所有非拉丁字符都变成“?” 图像被打破http://s019.radikal.ru/i602/1205/7c/9df90800fba5.gif" rel=“nofollow'>http://s019.radikal.ru/i602/1205/7c/602/1205/7c/9df90800fba5.gif

随着未压缩图像的传输,我使用缓冲Reader,一切都正常

BufferedReader is =
   new BufferedReader(
      new InputStreamReader( download.getInputStream()));
问题回答

读者/作家班的设计是为了与文本(基于特性的)输入/产出合作。

压缩的图像是二进制的, 您需要使用输入Stream/ DextputStream 或 nio 类来传输二进制数据 。

下面举一个使用 InvestiveStream/ExputStream 的例子。 这个例子将收到的数据存储在本地文件中 :

    BufferedInputStream bis = null;
    BufferedOutputStream bos = null;
    try {

        bis = new BufferedInputStream(download.getInputStream());
        bos = new BufferedOutputStream(new FileOutputStream("c:\mylocalfile.gif"));

        int i;
        // read byte by byte until end of stream
        while ((i = bis.read()) != -1) {
            bos.write(i);
        }
    } finally {
        if (bis != null)
            try {
                bis.close();
            } catch (IOException ioe) {
                ioe.printStackTrace();
            }
        if (bos != null)
            try {
                bos.close();
            } catch (IOException ioe) {
                ioe.printStackTrace();
            }
    }




相关问题
Spring Properties File

Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...

Logging a global ID in multiple components

I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...

Java Library Size

If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...

How to get the Array Class for a given Class in Java?

I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....

SQLite , Derby vs file system

I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...

热门标签