java 如何输出所有汉字

Python014

java 如何输出所有汉字,第1张

public class Demo {public static void main(String args[]){for(int i=0i<=65535i++){System.out.print((char)i+" ")if(i%10==0)System.out.println()}}} 这个程序可以输出所有的字符,包括汉字,字母,日语等国外字符。

直接给你贴代码

package test

import java.io.*

public class RandomFileDemo {

public static void main(String[] args) throws Exception {

Employee e1=new Employee("张三",23)

Employee e2=new Employee("李四",24)

Employee e3=new Employee("王五",25)

RandomAccessFile ra=new RandomAccessFile("d:\\employee.txt","rw")

ra.writeChars(e1.name)

ra.writeInt(e1.age)

ra.writeChars(e2.name)

ra.writeInt(e2.age)

ra.writeChars(e3.name)

ra.writeInt(e3.age)

ra.close()

RandomAccessFile raf=new RandomAccessFile("d:\\employee.txt","r")

raf.skipBytes(Employee.LEN*2+4)

String str=""

int len=Employee.LEN

for(int i=0i<leni++)

str=str+raf.readChar()

System.out.println("第二位员工信息")

System.out.println("name="+str.trim()+",age="+raf.readInt())

raf.seek(0)

str=""

for(int i=0i<leni++)

str=str+raf.readChar()

System.out.println("第一位员工信息")

System.out.println("name="+str.trim()+",age="+raf.readInt())

str=""

raf.skipBytes(Employee.LEN*2+4)

for(int i=0i<leni++)

str=str+raf.readChar()

System.out.println("第三位员工信息")

System.out.println("name="+str.trim()+",age="+raf.readInt())

raf.close()

}

}

class Employee {

String name

int age

final static int LEN=8

public Employee(String name,int age) {

if(name.length()>LEN)

name=name.substring(0,8)

else {

while(name.length()<LEN)

name=name+"\u0000"

}

this.name=name

this.age=age

}

}

你上面的用getBytes写入的话,是读不出中文的,因为在java 中不管是中文字符还是英文字符 它们都是一个字符 都占用两个字节 在本地的计算机编码系统中英文字符占用一个字节 而中文字符占用两个字节.

想输出出中文的话,就可以存储的时候用writeChars,读出的时候用readChar,

注意在TXT中,这样存是看不到任何数据的,只是一些乱码。读出的时候才能看到正确数据