zoukankan      html  css  js  c++  java
  • 字符串和文本IO 实验操作

    一、实验目的

    1.掌握Java语言中对字符串的处理方法,能编写字符串处理的程序;

    2.理解对Java语言文本读写的处理方法,能编写简单的文本处理和读写程序。

    二,编写名为DeleteText的类,删除文本文件中的字符串,文件名和字符串作为命令行参数传递如下:

    1. java DeleteText <源文件> <目标文件> <字符串>。

    2.相关知识

    所谓命令行参数,说白了其实就是在编译好之后,运行程序时需要带入参数,例如:
    java calssName 参数1 参数2……
    这里其实我们输入的参数存储在args[0],args[1],args[2]……中,即:
    java className args[0] args[1] args[2]……

    三 相应的步骤和代码如下:

    1.源代码

    package work6;
    /*功能:文本刪除
    *输入4个参数:源文件(source_file)、目标文件(target_file)、需要改的字符串(old_string)、输入一个口的字符串就
    *可以达到删除指定字符串的目的
    *注:源文件是需要被改的文件,目标文件是替换结束后用于存储新文本的文件
    *输出:目标文件(target_file)
    *2021
    */
    import java.io.File;//引入File类
    import java.io.PrintWriter;//引入PrintWriter类,用于写数据入文件
    import java.util.Scanner;//引入Scanner类,用于从文件读数据
    
    class DeleteText{
    	public static void main(String[] args) throws Exception{
    		//输入的四个参数存储在数组arg[]中
    		File source_file = new File(args[0]);
    		//System.out.println(args[0]);
    		//检测原文件是否存在
    		if (!source_file.exists()) {
    			System.out.println("源文件"+args[0]+"不存在");
    			System.exit(0);
    		}
    		File target_file = new File(args[1]);//第二个参数
    		//检测目标文件是否已经存在
    		if (target_file.exists()) {
    			System.out.println("目标文件"+args[1]+"已经存在");
    			System.exit(0);
    		}
    		//读和写对象
    		Scanner input = new Scanner(source_file);//读取源文件对象
    		PrintWriter output = new PrintWriter(target_file);//写入目标文件的对象
    		while(input.hasNext()){//判断是否还有可读的内容
    			String str1 = input.nextLine();//读取源文件的内容
    			String str2 = str1.replaceAll(args[2],args[3]);//把文本中的所有的第三个参数替换成第四个参数
    			output.println(str2);//替换后的新的文内容写入到目标文件
    		}
    		input.close();//.close()方法关闭文件,释放被文件占用的资源
    		output.close();//.close()方法关闭文件,如果不关闭,数据不能保存在文件中 
    

    2.步骤:其中源文件要存在,并且在当前文件夹下:

    3.源文件内容:

    4.通过命令传递参数

    4.运行之后的结果

    5.目标文件里面的内容

    四 实验参考资料

    1.《Java语言程序设计:基础篇》(美)Y.Daniel Liang 著,王镁、新夫、李娜 等译,机械工业出版社,2006年8月第一版。

    2.《Java程序设计教程(上册):基础篇》(美)Harvey M.Deitel Paul J.Deitel 著,袁兆山、刘宗田、苗沛荣 等译,机械工业出版社,2004年7月第一版。

  • 相关阅读:
    DockerCompose安装与快速体验
    Nginx:Docker部署与负载均衡开发实践
    JAVA基础:反射基础
    JVM:类加载机制
    JAVA基础:注解应用示例
    JAVA基础:注解机制
    JAVA并发(五):关键词final
    JAVA并发(四):关键词volatile
    Linux虚拟机配置作为旁挂路由器
    Linux起不来,如何修复
  • 原文地址:https://www.cnblogs.com/Xieyingpeng/p/14292827.html
Copyright © 2011-2022 走看看