10天轻松学习javase第6天上,学习Java io 和ASCII

10天轻松学习javase第6天上,学习Java io 和ASCII

基于字节操作的I/O接口:InputStream和OutputStream
基于字符操作的I/O接口:Writer和Reader
基于磁盘操作的I/O接口:File
基于网络操作的I/O接口:Socket(不在java.io包下)

数据流的基本概念
基本流:一组有序,有起点和终点的字节的数据序列。包括输入流和输出流。

输入流:程序从输入流读取数据源。数据源包括外界(键盘、文件、网络…),即是将数据源读入到程序的通信通道。

输出流:程序向输出流写入数据。将程序中的数据输出到外界(显示器、打印机、文件、网络…)的通信通道。

JavaIO的基本类位于java.io包下。
InputStream 表示输入流
OutputStream 表示输出流
FileInputStream 表示文件输入流
FileOutputStream 表示文件输出流

InputStream这个抽象类是表示输入字节流的所有类的超类。
需要定义InputStream子类的应用InputStream必须始终提供一种返回输入的下一个字节的方法。
BufferedInputStream , ByteArrayInputStream , DataInputStream , FilterInputStream , read() , OutputStream , PushbackInputStream

	public static void main(String[] args) throws IOException{
		
	
		
	    	//读取文件的字符输出ASCII码的值
		
		    	  InputStream input  = new FileInputStream("src/readme.txt");
		        int n;
		        while ((n = input.read()) != -1) {
		        	
		    
		            System.out.println(n);
		        }
		  		
		
		
	}

ASCII码
目前计算机中用得最广泛的 字符集及其编码,是由美国国家标准局(ANSI)制定的ASCII码(American Standard Code for Information Interchange,美国标准信息交换码),它已被国际标准化组织(ISO)定为国际标准,称为ISO 646标准。适用于所有拉丁文字字母,ASCII码有7位码和8位码两种形式。

	public static void main(String[] args) throws IOException{
		
	
		//监听键盘,数组字母的ASCII码
		
		
		Scanner in = new Scanner(System.in); 
		String b = in.next(); 
		for( int i=0;i< b.length();i++){ 
			System.out.println( b.charAt(i)+" "+(byte) b.charAt(i)); 
		} 
		
		
	}
  

输出所有字符及其对应的ASCII码值

	public static void main(String[] args) throws IOException{
		
	
		//输出字符及其对应的ASCII码值
		
		
		// TODO Auto-generated method stub
		for(int i=0;i<255;i++){
			char a = (char) i;
			System.out.println(a+" "+i);
		}
		
	}

小结:
第33~126号(共94个)是字符,
其中第48~57号为0~9十个阿拉伯数字;
65~90号为26个大写英文字母,
97~122号为26个小写英文字母,
其余为一些标点符号、运算符号等。

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

		FileReader file = null;

		// 创建FileReader并指定要读取的readme.text文件内容
		file = new FileReader("src/readme.txt");
		System.out.println("src/readme.txt文件内容");
		int n = 0;
		while ((n = file.read()) != -1) {
			System.out.println((char) n);
		}

		file.close();

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

		//创建一个FileWriter对象,该对象初始化的时候就要指定被操作的文件   该文件不存在就会新建一个文件
				FileWriter file = null;
		
					file = new FileWriter("src/readme.txt");
					file.write("HelloWorld!");
					//刷新缓存数据将数据写入文件
					file.flush();
		 
					file.write("10天轻松学习Javase");
					file.write("10天轻松学习Javase");

		
					file.close();
					
					
					System.out.println("操作完成,查看src/readme.txt 文件内容");
			
	}
 
	public static void main(String[] args) throws IOException {
	
		//读取文件并写入到另一个文件里
		 System.out.println("start");
		 
	        Reader in = new FileReader("src/readme.txt");
	        Writer out = new FileWriter("src/readme2.txt");
	 
	        char [] arr = new char[100];
	        int n;
	 
	        while((n = in.read(arr)) > 0){
	            out.write(arr,0,n);
	        }
	 
	        in.close();
	        out.close();
	 
	        System.out.println("end");
	 
	    }
发布了55 篇原创文章 · 获赞 1 · 访问量 2946

猜你喜欢

转载自blog.csdn.net/u013750652/article/details/104045983