2.“换行”是一种操作或者动作。
换行: 在电脑上,编辑软件中一般用于结束一行文字输入,并将光标移到下一行的行首的位置。3. 转义字符“\r”,“\n”。
4.其他的一些知识
在Unix系统下执行 换行操作 用“\n” 在windows 操作做系统下执行 换行操作 用“\r\n” 在Mac操作系统下执行 换行操作用“\r” 其他人对这些知识点的介绍: http://blog.csdn.net/xiaoxian8023/article/details/8448160 有了上面的了解 我们可以这样认为 我们通常说的“回车” 也就是得到 换行的效果 也就是点电脑上的enter键 转义字符 是用在打印数据时 或者 说 在电脑硬盘上输入数据使用 来控制字符的位置 这些字符不显示 来控制一些操作回车得到换行的效果,敲enter键,在文本文件中产生我们看不见的转义字符
下面来测试一下
1.测试控制台输出(打印)规律
1 public class DemoEscapeCharacter { 2 public static void main(String[] args) { 3 System.out.print("aaa"); 4 System.out.print("bbb"); 5 System.out.print("ccc"); 6 System.out.print("ddd"); 7 System.out.print("eee"); 8 System.out.print("fff"); 9 System.out.println("*************"); 10 System.out.print("转义字符\\r "+"aaa\r"); 11 System.out.print("转义字符\\n "+"bbb\n"); 12 System.out.print("转义字符\\r\\n "+"ccc\r\n"); 13 System.out.print("转义字符\\n\\r "+"ddd\n\r"); 14 15 System.out.print("转义字符\\n x \\r "+"eeeeeee\nf\r"); 16 System.out.print("转义字符\\n xxx \\r "+"eeeeeee\nfff\r"); 17 System.out.print("转义字符\\r x \\n "+"eeeeeee\rf\n"); 18 System.out.print("转义字符\\r xxx \\n "+"eeeeeee\rfff\n"); 19 System.out.println("******************************************"); 20 System.out.print("转义字符\\n\\r\\r\\r"+"eeeeeeeeeeeeeeeee\n\r\r\r"+"abcdefghijk"); 21 } 22 }
2.测试Windows下的换行是否是“\r\n”
1 import java.io.FileNotFoundException; 2 import java.io.FileReader; 3 import java.io.FileWriter; 4 import java.io.IOException; 5 6 public class DemoReader { 7 public static void main(String[] args) { 8 FileReader fr=null; 9 try { 10 fr=new FileReader("C:/Users/lenovo/Desktop/编译错误单词.txt"); 11 char []buf=new char[10];//接受读取的一段 信息 12 int realCount=0; 13 while ((realCount=fr.read(buf))!=-1){ 14 for (int i = 0; i <realCount; i++) { 15 // if(buf[i]=='\r'){ 16 // System.out.print(" \\r"); 17 // } 18 // if(buf[i]=='\n'){ 19 // System.out.print(" \\n"); 20 // } 21 System.out.print(buf[i]); 22 } 23 } 24 } catch (FileNotFoundException e) { 25 // TODO Auto-generated catch block 26 e.printStackTrace(); 27 } catch (IOException e) { 28 // TODO Auto-generated catch block 29 e.printStackTrace(); 30 }finally{ 31 if(fr!=null){ 32 try { 33 fr.close(); 34 } catch (IOException e) { 35 // TODO Auto-generated catch block 36 e.printStackTrace(); 37 } 38 } 39 } 40 } 41 }
1 import java.io.FileWriter; 2 import java.io.IOException; 3 4 public class TestFileWriter { 5 public static void main(String[] args) { 6 String[] text={ 7 "这是第一行\n", 8 "这是一个TestFileWriter示例程序\n", 9 "需要用FileWriter打开文件\n", 10 "访问结束后需要关闭文件\n", 11 "否则内容不会写入文件,因为只写到了磁盘的缓冲区", 12 }; 13 FileWriter fw=null; 14 try { 15 fw=new FileWriter("C:/Users/lenovo/Desktop/FileWriter1.text"); 16 for(String str:text){ 17 char[]buf=str.toCharArray(); 18 fw.write(buf,0,buf.length); 19 } 20 } catch (IOException e) { 21 // TODO Auto-generated catch block 22 e.printStackTrace(); 23 }finally{ 24 try { 25 fw.close(); 26 } catch (IOException e) { 27 // TODO Auto-generated catch block 28 e.printStackTrace(); 29 } 30 } 31 } 32 }
1 import java.io.FileWriter; 2 import java.io.IOException; 3 4 public class TestFileWriter { 5 public static void main(String[] args) { 6 String[] text={ 7 "这是第一行\r\n", 8 "这是一个TestFileWriter示例程序\r\n", 9 "需要用FileWriter打开文件\r\n", 10 "访问结束后需要关闭文件\r\n", 11 "否则内容不会写入文件,因为只写到了磁盘的缓冲区", 12 }; 13 FileWriter fw=null; 14 try { 15 fw=new FileWriter("C:/Users/lenovo/Desktop/FileWriter1.text"); 16 for(String str:text){ 17 char[]buf=str.toCharArray(); 18 fw.write(buf,0,buf.length); 19 } 20 } catch (IOException e) { 21 // TODO Auto-generated catch block 22 e.printStackTrace(); 23 }finally{ 24 try { 25 fw.close(); 26 } catch (IOException e) { 27 // TODO Auto-generated catch block 28 e.printStackTrace(); 29 } 30 } 31 } 32 }
打开记事本 输入 两个汉字 敲enter 保存 ;查看文件大小 6字节[b]; 创建新的 一个 记事本 文件 输入两个汉字 保存 ;查看文件大小 4字节[b]; 一个汉字两个字节 2[b] 。