• 文件的编码
package cn.test;

import java.io.UnsupportedEncodingException;

public class Demo15 {
public static void main(String[] args) throws UnsupportedEncodingException {
String str = "你好ABC123";
byte[] b1 = str.getBytes();//转换成字节系列用的是项目默认的编码
for (byte b : b1) {
//把字节(转换成了int)以十六进制方式显示
System.out.print(Integer.toHexString(b & 0xff) + " ");
} System.out.println("");
//utf8编码,中文占用3个字节,英文和数字占用1个字节
byte[] b2 = str.getBytes("utf8");
for (byte b : b2) {
System.out.print(Integer.toHexString(b & 0xff) + " ");
} System.out.println("");
//gbk编码,中文占用两个字节,英文和数字占用1个字节
byte[] b3 = str.getBytes("gbk");
for (byte b : b3) {
System.out.print(Integer.toHexString(b & 0xff) + " ");
} System.out.println("");
//java是双字节编码 utf-16be
//utf-16be编码,中文占2个字节,英文和数字也占用2个字节
byte[] b4 = str.getBytes("utf-16be");
for (byte b : b4) {
System.out.print(Integer.toHexString(b & 0xff) + " ");
} System.out.println("");
//当字节序列是某种编码时,这时候想把字节序列变成字符串,也需要用这种编码方式,否则会出现乱码
String str1 = new String(b4);//使用项目默认的编码
System.out.println(str1);
String str2 = new String(b4, "utf-16be");
System.out.println(str2);
}
}

  执行结果:

e4  bd  a0  e5  a5  bd  41  42  43  31  32  33
e4 bd a0 e5 a5 bd 41 42 43 31 32 33
c4 e3 ba c3 41 42 43 31 32 33
4f 60 59 7d 0 41 0 42 0 43 0 31 0 32 0 33
O`Y}ABC123
你好ABC123

  文本文件就是字节序列,可以是任意编码的字节序列。

  如果我们在中文机器上直接创建文本文件,那么该文本文件只认识ansi编码(中文系统下,ansi编码代表gbk编码)

Java—IO流 文件的编码的更多相关文章

  1. 【Android】数据存储-java IO流文件存储

    1.数据持久化:将在内存中的瞬时数据保存在存储设备中.瞬时数据:设备关机数据丢失.持久化技术提供一种机制可以让数据在瞬时状态和持久状态之间转换. 2.Android中简单的三种存储方式:文件存储.Sh ...

  2. java IO流文件的读写具体实例(转载)

    引言: 关于java IO流的操作是非常常见的,基本上每个项目都会用到,每次遇到都是去网上找一找就行了,屡试不爽.上次突然一个同事问了我java文件的读取,我一下子就懵了第一反应就是去网上找,虽然也能 ...

  3. Java IO 流-- 文件拷贝

    IO流操作套路: 1.创建源: 2.选择流: 3.操作: 4.释放资源 上代码: package com.xzlf.io; import java.io.File; import java.io.Fi ...

  4. java IO流文件的读写具体实例

    IO流的分类:1.根据流的数据对象来分:高端流:所有的内存中的流都是高端流,比如:InputStreamReader  低端流:所有的外界设备中的流都是低端流,比如InputStream,Output ...

  5. Java IO流文件复制/解压的几种方法总结

    引言 在JavaWeb项目开发过程,涉及到IO文件的读写操作以及文件的复制copy操作是作为一个程序员不可获取的知识,那接下来就总结一些copy文件的一些方法,与大家通过学习,如果还有其他更好的方法, ...

  6. java IO流文件拷贝文件(字符流标准写法)

    public static void copyFile2(String path1, String path2) { Reader reader = null; Writer writer = nul ...

  7. java IO流文件拷贝文件(字节流标准写法)

    public static void copyFile(String srcPath, String destPath) { FileInputStream fis = null; FileOutpu ...

  8. Java:IO流与文件基础

    Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...

  9. java io流 对文件夹的操作

    java io流 对文件夹的操作 检查文件夹是否存在 显示文件夹下面的文件 ....更多方法参考 http://www.cnblogs.com/phpyangbo/p/5965781.html ,与文 ...

随机推荐

  1. linux的目录和基本的操作命令

    目录相关操作:( ctrl+l   清空当前的屏幕中的命令  ) 一:目录说明: .   当前目录..   上一层目录-   前一个工作目录~   当前[用户]所在的家目录 蓝色的文件: 都是目录 白 ...

  2. day--39-MySQL的多表查询

    多表查询一:表的基本介绍 可以参考:https://www.cnblogs.com/cdf-opensource-007/p/6517627.html 建立一个员工表信息表和一个部门表,每个员工都对应 ...

  3. BZOJ - 2648 KD树 最近点查询

    省赛后躺尸几天又回来更新了,内容是说好的KD树.. 具体操作从代码中感受一下 感觉已经把KD树尽量封装好了(虽然全局的D看着极不顺眼) 需要注意的是估值函数的判断条件 #include<bits ...

  4. PHP操作Access数据库

    ADO是一项微软的技术,ADO指ActiveX数据对象(ActiveX Data Objects). 链接数据库 <?php header("Content-Type:text/htm ...

  5. [转] 如何批量删除Docker中已经停止的容器

    [From]https://blog.csdn.net/csdn_duomaomao/article/details/78587103 方法一: #显示所有的容器,过滤出Exited状态的容器,取出这 ...

  6. SPOJ - AMR11

    A Thanks a lot for helping Harry Potter in finding the Sorcerer's Stone of Immortality in October. D ...

  7. linux下目录、文件显示颜色的设置生效

    Centos系统 拷贝/etc/DIR_COLORS文件为当前主目录的 .dir_colors 命令:cp /etc/DIR_COLORS ~/.dir_colors 修改~/.dir_colors中 ...

  8. Rsa2加密报错java.security.spec.InvalidKeySpecException的解决办法

    最近在和支付宝支付做个对接,Java项目中用到了RSA2进行加解密,在加密过程中遇到了错误: java.security.spec.InvalidKeySpecException: java.secu ...

  9. 移动端刷新组件XtnScroll--Angular4实现

    刷新组件 - 主要是学习一下Angular4所有花了我一天时间,写了这个刷新组件. 以项目开发当中,特别是手机移动端开发的时候,经常要用到就是上拉加载下一面,下拉刷新获取最新数据的功能. 在网也有很多 ...

  10. Zookeeper概念学习系列之zookeeper是什么?

    1. Zookeeper是Hadoop的分布式协调服务. 2. 分布式应用程序可以基于它,来实现同步服务,配置维护和命名服务等. 3. zookeeper可以保证数据在zookeeper集群之间的数据 ...