大伙帮个忙,改变Inputstream的字符编码

问题描述

传2个参数进去 返回changEncoding该怎么写呢 或者谁给个思路先谢了changEncoding(Inputstream i,String charater){}

解决方案

有个现成的类的引用public class InputStreamReaderextends ReaderInputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,否则可能接受平台默认的字符集。 每次调用 InputStreamReader 中的一个 read() 方法都会导致从基础输入流读取一个或多个字节。要启用从字节到字符的有效转换,可以提前从基础流读取更多的字节,使其超过满足当前读取操作所需的字节。 为了达到最高效率,可要考虑在 BufferedReader 内包装 InputStreamReader。例如: BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); BufferedReader in = new BufferedReader(new InputStreamReader(i)); //这样就能读取相应编码的字符了
解决方案二:
这个 java提供的库函数就有相关的实现啊 如果你要想看源代码就直接下载java的源码读读咯 我这里提供一种思路是首先要有各个编码的字库文件,然后就是读取字节进行解码的过程了,这里如果多字节字符的话,连续的读取需要自己设置分割,如果是宽字符的话,字节检索简析就行了。一般字库都是有索引的!
解决方案三:
你在用流在读取的时候可能还不涉及到编码和解码的问题,当你需要把用流读取出来的byte装换成字符的时候才会涉及到解码;InputStreamReader就是把字节流读取装换成字符读取的一种方式,所以InputStreamReader的构造方法提供了字符集参数:InputStreamReader(InputStream in, String charsetName)
解决方案四:
哥们,你这个题目是我见过最有诗意的问题。压根没看明白你想说啥?另外 你能解释一下啥是changEncoding?

时间: 2024-09-20 13:41:06

大伙帮个忙,改变Inputstream的字符编码的相关文章

Java 关于 欧元 € 字符的问题 帮个忙耶!

问题描述 情况如下String c = "u0080";System.out.println(c); 打印结果 解释     u0080 对应字符 €  为什么在Java环境里不可见呢    1. 打印说明已经被认为是0080了但是打印出来就是不可见.    2. 真实的应用是从RSS里面读取数据然后保存到数据库已经注意编码了RSS里面是 €数据库里面是.    3.我用FF打开RSS源能显示€. 可以参见http://rss.news.yahoo.com/rss/yahoonewsr

谢谢了、求大神帮一下忙。

问题描述 谢谢了.求大神帮一下忙. 请编写函数fun(char *str int num[])它的功能是:分别找出字符串中每个数字字符(0,1,2,3,4,5,6,7,8,9)的个数,用num[0]来统计字符0的个数,用num[1]来统计字符1的个数.....用num[9]来统计字符9的个数.字符串由主函数从键盘读入. 解决方案 void fun(char *str int num[10]){int num[10];int i;for (i = 0; i < 10; i++) num[i] =

【新人求助】C#中获取获取字符串的长度的方法,希望大家帮个忙!!谢谢!!

问题描述 如题.或者说,C#中有没有一种现成的方法可以在字符串统计出一个给定的字符的数量.C#初学者,也不知道提的问题是不是很白痴.希望各位大大帮个忙.谢谢 解决方案 解决方案二:对了,不是字符长度的说解决方案三:或者可以用正则试试,字符串好像没有这样的方法解决方案四:linq正则都可以

AADL-osate安装步骤拿稳大神帮个忙

问题描述 AADL-osate安装步骤拿稳大神帮个忙 那位大神了解AADL-OSATE的吗,能把安装步骤告诉一下吗?急急急!!先谢了!由于没有钱币不,悬赏不了,只求好心人帮个忙 解决方案 http://wenku.baidu.com/link?url=PJ2l3wDqG4oKU3c7ZoFJwtEN4VL76d9Bn8sbwQQuEVhgD7YKmDm51qiJRiAfkNGl1g_0lztGf0ae8fuZpGSoeghQoN5wFhlXMUc6GJS9tfC

如何拒绝“帮个忙”

  看到标题你有啥反应?当然了,如果真是亲妈来了,肯定要不辞劳苦的给她做的,这里只是一个夸张句,是针对那些总要你"帮个忙"的朋友的一句回应! 相信当我们听到"免费"一词时有的人会微笑而有的人则会撅嘴.免费从别人那里拿到成品我们当然会微笑,但是免费为别人提供服务就不见得会笑得出来了.遥想当年,多少亲戚盆友挂着"朋友"的名义来找我们免费设计啊,"很简单的"."一分钟搞定",想起来都发麻有木有?朋友们都自以为我们

大家好,这个程序一直显示不对,请帮一下忙,谢谢!

问题描述 大家好,这个程序一直显示不对,请帮一下忙,谢谢! #include void main() { float celsius=0,True_celsius=0,True_salary=0,salary=0; printf("Enter the number of celsius>n"); scanf("%1f",&celsius); printf("Enter the number of salary>n"); sca

问一条SQL,求帮下忙

问题描述 我也是好久没有碰数据库了,现在有两个表一个是类别表大类,中类,小类分别对尖的数据是010101010101也就是说2位,4位,6位,另有一个物资表物资ID,类别(对应小类),物资名称,物资ID等等.要查出以下的格式. 解决方案 解决方案二:@以专业开发人员为伍来帮下忙看看,给个参考都行,搜都不好搜,忘了这个叫什么了.解决方案三:selectd.大类,c.中类,b.小类,a.*from物资表ainnerjoin类别表bona.类别=b.小类innerjoin类别表conb.中类=c.中类

数据库 mysql-java Error querying database.在线急需求指导,大神们帮个忙吧

问题描述 java Error querying database.在线急需求指导,大神们帮个忙吧 org.springframework.jdbc.BadSqlGrammarException: Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'username' in 'field list' The error may invo

请大家帮个忙:在java中 构造器和放法的根本区别是什么?

问题描述 请大家帮个忙:在java中 构造器和放法的根本区别是什么? 在java中 构造器和放法的根本区别是什么?我真迷惑了 解决方案 没有根本的区别,它们之间是包涵的关系,构造函数是特殊的方法. 特殊在哪里?不能定义返回值,不能重写,不能任意起名,不能随意调用(用new调用). 好比正方形和矩形的关系,正方形是特殊的矩形. 解决方案二: 构造器是你创建一个实例对象时调用到的,它默认的是不带参数的.你可以自己写带参数的构造函数. 方法是还分实例方法和类方法.如果是实例方法,那么就是由上面的构造器