编码问题的阐释:
基础概念:
1、 ANSI编码方式包括GBK、GB2312
2、 UTF-8编码方式ISO-10646-1
3、 IE浏览器正常(默认)情况下只解析以ANSI方式存储的中文,否则出现乱码。同时在解析中文较多的网页时ANSI(GB2312)方式最快。
4、 如果采用FileWriter类输出,使用编码方式(UFT-8)(winxp,win7下)输出。
5、 如果采用OutputStreamWriter((new FileOutputStream(f)),"GB2312")方式强制输出为ANSI编码方式。
以下是在Html中中文乱码问题的解决代码!
-----------------------------------------------------------------------------------------------
解释:
 字节流与字符流主要的区别是他们的的处理方式
字节流是最基本的,所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的
但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化
这两个之间通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联
在实际开发中出现的汉字问题实际上都是在字符流和字节流之间转化不统一而造成的
在从字节流转化为字符流时,实际上就是byte[]转化为String时,
public String(byte bytes[], String charsetName)
有一个关键的参数字符集编码,通常我们都省略了,那系统就用操作系统的lang
而在字符流转化为字节流时,实际上是String转化为byte[]时,
byte[]    String.getBytes(String charsetName)
也是一样的道理
至于java.io中还出现了许多其他的流,按主要是为了提高性能和使用方便,
如BufferedInputStream,PipedInputStream等
------------------------------------------------------------------------------------------------
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;

public class CharsetTest {//强制使用ANSI方式存储文件
    public static void main(String[] args) throws Exception {
        File f=new File("C:\\f1.html");
        String str="<html><head><title>"+"哈子飞!"+"</title></head><body>"+"哈子飞" +".html"+"</body></html>";
        OutputStreamWriter osw=new OutputStreamWriter((new FileOutputStream(f)),"GB2312");
        //OutputStreamWriter 是字符流通向字节流的桥梁
        //FileOutputStream此抽象类是表示输出字节流的所有类的超类。
        //输出流接受输出字节并将这些字节发送到某个接收器。
        osw.write(str);
        osw.flush();
        osw.close();
    }
}

JAVA字符编码问题的阐释(以ANSI方式存储文件)相关推荐

  1. 【JAVA编码专题】 JAVA字符编码系列三:Java应用中的编码问题

    这两天抽时间又总结/整理了一下各种编码的实际编码方式,和在Java应用中的使用情况,在这里记录下来以便日后参考. 为了构成一个完整的对文字编码的认识和深入把握,以便处理在Java开发过程中遇到的各种问 ...

  2. Java字符编码知识简介

    1.基本信息 摘要:在Java应用程序特别是Web应用中,经常遇到字符的编码问题.为了防止出现乱码,首先需要了解字符编码的基本概念以及Java是如何处理字符编码的,这样就可以有目的地在输入/输出环节中 ...

  3. 【JAVA编码】 JAVA字符编码系列二:Unicode,ISO-8859,GBK,UTF-8编码及相互转换

    http://blog.csdn.net/qinysong/article/details/1179489 这两天抽时间又总结/整理了一下各种编码的实际编码方式,和在Java应用中的使用情况,在这里记 ...

  4. 【JAVA编码专题】JAVA字符编码系列一:Unicode,GBK,GB2312,UTF-8概念基础

    这两天抽时间又总结/整理了一下各种编码的实际编码方式,和在Java应用中的使用情况,在这里记录下来以便日后参考. 为了构成一个完整的对文字编码的认识和深入把握,以便处理在Java开发过程中遇到的各种问 ...

  5. java字符编码方式总结

    java字符编码方式总结一.概要在JAVA应用程序特别是基于WEB的程序中,经常遇到字符的编码问题.为了防止出现乱码,首先需要了解JAVA是如何处理字符的,这样就可以有目的地在输入/输出环节中增加必要 ...

  6. 关于JAVA字符编码:Unicode,ISO-8859-1,GBK,UTF-8编码及相互转换

    出处: https://www.cnblogs.com/haimishasha/p/6117968.html 目录 1.1. ISO-8859-1 通常叫做Latin-1 1.2. GB2312/GB ...

  7. java字符编码详解_java字符编码详解

    1. 概述 本文主要包括以下几个方面:编码基本知识,java,系统软件,url,工具软件等. 在下面的描述中,将以"中文"两个字为例,经查表可以知道其GB2312编码是" ...

  8. java字符编码采用_JAVA字符编码三:Java应用中的编码问题

    1. 概述 本文主要包括以下几个方面:编码基本知识,java,系统软件,url,工具软件等. 在下面的描述中,将以"中文"两个字为例,经查表可以知道其GB2312编码是" ...

  9. java字符编码问题_JAVA字符编码系列三:Java应用中的编码问题

    1. 概述 本文主要包括以下几个方面:编码基本知识,java,系统软件,url,工具软件等. 在下面的描述中,将以"中文"两个字为例,经查表可以知道其GB2312编码是" ...

最新文章

  1. python3 异步 asyncio get_event_loop new_event_loop 使用
  2. 为 Vue3 学点 TypeScript, 命名空间(namespace)是什么?
  3. jmeter展示内存cpu_基于Docker的jmeter弹性压测(2)监控
  4. boost::mpl模块实现unpack_args相关的测试程序
  5. 重磅大礼!100本《机器学习》by周志华,免费送!
  6. 高并发库存秒杀场景,阿里巴巴数据库是这样应对的
  7. 如何写一篇合格的论文(清华大学刘知远)
  8. java输出的文本内容不对_java 字符串写入文件后再读出不一样? 有什么解决办法吗?...
  9. PYTHON解析XML的多种方式效率对比实测
  10. [安卓] 2、使用2中方法做按钮监听和图片按钮使用
  11. Java NIO 详解(一)
  12. python中rgb颜色_python颜色显示
  13. [一定要看完]住在隔壁的刚毕业的大学生小夫妻
  14. uib-datepicker-popup使用
  15. QCY T3 蓝牙耳机连接电脑 声音断续卡顿
  16. PCB设计技巧10大技巧
  17. word怎么删除红色波浪线
  18. NLP(7): Word Sense Disambiguation and CKY
  19. 哪个软件能代替斐讯路由_斐讯路由器控制软件 4.2.1 去广告版 - 用手机管理斐讯路由器...
  20. 【电脑使用】利用diskpart删除电脑的EFI分区

热门文章

  1. 关于英雄联盟中护甲值对伤害减免的影响
  2. 苏州及上海国际学校IB成绩如何?
  3. 图像信息隐藏算法JAVA_Java实现 LeetCode 831 隐藏个人信息(暴力)
  4. [原创]android studio升级无法打开 闪退修复大法思路
  5. 类文件具有错误的版本 55.0, 应为 52.0
  6. 抖音SEO优化源码,搜索排名系统,技术理论分析,抖音矩阵,抖音seo系统。
  7. 2019经济学396考研视频资料【全】
  8. 【数据结构】--表达式求解----完整版
  9. Hp服务器机箱风扇维修,HP服务器机箱改装(3)
  10. java三大领域对象,Java面向对象概述和三大特性