Java IO--字符编码getProperty、getBytes

编码:

在计算机世界里,任何的文字都是以指定的编码方式存在的,在java程序的开发中最常见的编码为:ISO8859-1、GBK/GB2312、unicode、UTF。

乱码的产生:

得到本机的编码显示:

public class CharSetDemo01{
	public static void main(String args[]){
		System.out.println("系统默认编码:" +
			System.getProperty("file.encoding")) ;	// 获取当前系统编码
	}
};

import java.io.OutputStream ;
import java.io.FileOutputStream ;
import java.io.File ;
public class CharSetDemo02{
	public static void main(String args[]) throws Exception {
		File f = new File("D:" + File.separator + "test.txt") ;	// 实例化File类
		OutputStream out = new FileOutputStream(f) ;	// 实例化输出流
		byte b[] = "中国,你好!".getBytes("ISO8859-1") ;	// 转码操作
		out.write(b) ;	// 保存
		out.close() ;	// 关闭
	}
};
时间: 2024-07-30 01:39:24

Java IO--字符编码getProperty、getBytes的相关文章

关于java中字符编码的一点心得,可能对初学者有点帮助

编码|初学|心得 这是张孝祥老师的java就业培训视频教程里面的一道题目有所变动编写下面的程序代码分析和观察程序的运行结果 import java.io.*;public class TestCodeIO {      public static void main(String[] args) throws Exception{            InputStreamReader isr = new InputStreamReader(System.in,"iso8859-1"

JAVA里字符编码的探索与理解

编码 今天终于把JAVA里一个比较头痛的问题--字符编码弄清晰了,所以写一篇文章来纪念一下,也为大家提供一点自己的心得. 众所周知,JAVA为了国际通用,用的是UNICODE来保存里面的字符.而UNICODE只是一个种字符集,字符的存储和表示要用到一定的字符编码格式,而与UNICODE对应的字符编码格式就是我们常看到的UTF-8,UTF-16等等,而UTF-8是最常用的,所以人们常常把它和UNICODE等同起来(我以前就是这样的),这在某些情况下是没有错的,但这样的理解在JAVA里就会产生一些混

Java IO: 字符流的Piped和CharArray

本章节将简要介绍管道与字符数组相关的reader和writer,主要涉及PipedReader.PipedWriter.CharArrayReader.CharArrayWriter. PipedReader 原文链接 PipedReader能够从管道中读取字符流.与PipedInputStream类似,不同的是PipedReader读取的是字符而非字节.换句话说,PipedReader用于读取管道中的文本.代码如下: Reader reader = new PipedReader(pipedW

Java IO文件编码转换实现代码_java

对IO操作真心不是很懂...对编码.乱码也是一知半解...今天遇到了一个需求,要求将一个文件进行编码转换,并且返回编码后的字符串,如原本的GBK编码,转换为UTF-8 其中这个BytesEncodingDetect 类就不贴了.主要用了里面的获取文件编码格式. 刚开始试了直接在源文件修改编码方式,采用URLEncoder和URLDecoder进行转换,却迟迟不行.出现了中文奇数最后一个字乱码 百度找了解决方法,都未果,只好采用我的思路是:先读取源文件的内容,存放到StringBuffer里面,然

java IO之 编码 (码表 编码 解码 转换流)

编码 什么是编码? 计算机中存储的都是二进制,但是要显示的时候,就是我们看到的却可以有中国 ,a  1 等字符 计算机中是没有存储字符的,但是我们却看到了.计算机在存储这些信息的时候,根据一个有规 则的编号,当用户输入a 有a对映的编号,就将这个编号存进计算机中这就是编码.   计算机只能识别二进制数据. 为了方便应用计算机,让它可以识别各个国家的文字.就将各个国家的文字用数字来表示, 并一一对应,形成一张表,这就是编码表. 例如: 汉字 中  有一种编码: 中字在utf 8中对映的编码   

求解关于JAVA中字符编码的问题

问题描述 我们都知道JAVA中的char类型是占两个字节,如下:publicclassgetcharcode{publicstaticvoidmain(String[]args){Strings="A";Stringr="王";System.out.println(s.getBytes().length);System.out.println(r.getBytes().length);Charactera='a';Characterb='啊';Integerc=5;

Java IO: 字符流的Buffered和Filter

本章节将简要介绍缓冲与过滤相关的reader和writer,主要涉及BufferedReader.BufferedWriter.FilterReader.FilterWriter. BufferedReader 原文链接 BufferedReader能为字符输入流提供缓冲区,可以提高许多IO处理的速度.你可以一次读取一大块的数据,而不需要每次从网络或者磁盘中一次读取一个字节.特别是在访问大量磁盘数据时,缓冲通常会让IO快上许多. BufferedReader和BufferedInputStrea

问个字符编码的问题java

问题描述 问个字符编码的问题java unicode字符编码,gbk是英文一个字节中文2个字节,utf-8是英文一个字节,中文3个字节.可在java中,char型数据无论中英文都是2个字节,char型数据是对应什么什么编码?还有什么字符编码可否简单的介绍一二? 解决方案 编码多呢.这是我电脑上安装的所有编码 IBM EBCDIC (US-Canada)OEM United StatesIBM EBCDIC (International)Arabic (ASMO 708)Arabic (DOS)G

Java IO教程

Java IO 是一套Java用来读写数据(输入和输出)的API.大部分程序都要处理一些输入,并由输入产生一些输出.Java为此提供了java.io包. 如果你浏览下java.io包,会对其中各样的类选择感到迷惑.这些类的作用都是什么?对于某个任务该选择哪个类?怎样创建你自己的类做插件?这个手册的目的就是给你介绍这些类是如何组织的,以及怎样使用他们,因此你就不会疑惑需要时怎样选取合适的类,或者是否有一个满足你需求的类已经存在了. Java.io 包的范围 java.io 包并没有涵盖所有输入输出