精华内容
下载资源
问答
  • JAVA修改文件内容

    2015-02-10 17:00:24
    1.JAVA修改文件内容 2.动态修改mysql的配置文件my.ini测试成功
  • 批量修改相似文档,在文档中添加一行,(处理大量小文件) package edu.btbu.cs714.webgl.three; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io....

    批量修改相似文档,在文档中添加一行,(处理大量小文件)


    package edu.btbu.cs714.webgl.three;
    
    
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    public class ChangeAPI {
    	private Pattern pattern =  null;;
    	public ChangeAPI(){
    		pattern = Pattern.compile("\\s*\\[link:https:.*\\.js\\]");	
    	}
    	public void updateFile(File file) throws IOException{
    		
    		if(file.getName().endsWith(".html")){
    			//file.  new InputStreamReader(in,"utf-8")
    			BufferedReader br = new BufferedReader( new InputStreamReader(new FileInputStream(file),"utf-8"));
    			StringBuffer sb =new StringBuffer();
    			
    			String tempString = null;
    			while((tempString=br.readLine())!=null){
    				//System.out.println(tempString);
    				Matcher matcher = pattern.matcher(tempString);
    				sb.append(tempString+'\n');
    				while(matcher.find()){
    				   tempString = "<br/>[link:../../../src/[path].js src/[path].js]\n";//添加内容
    				   sb.append(tempString);
    				}	
    			}
    			br.close();
    			//System.out.println(sb);
    			BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file),"utf-8"));
    			bw.write(sb.toString());
    			bw.close();
    		}else if(file.isDirectory()){
    			for(File f :file.listFiles()){
    				updateFile(f);
    			}
    		}
    	}
    
    	public static void main(String []args) throws IOException{
    		ChangeAPI change = new ChangeAPI();
    		change.updateFile(new File("F:\\Work\\docs\\api"));
    	}
    }
    

    其中乱码问题解决:


    为InputStreamReader、OutputStreamReader设置编码格式utf-8:

     
    
     
    

    BufferedReader br = new BufferedReader( new InputStreamReader(new FileInputStream(file),"utf-8"));

    BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file),"utf-8"));
    展开全文
  • java批量修改文件格式,文件内容修改过后可以修改想要的任何文件格式
  • java修改class文件指定内容

    万次阅读 2018-04-07 17:10:14
    java 中可以直接修改class文件,而不用反编译,方法如下: import java.io.DataInput; import java.io.DataInputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; ...

    在java 中可以直接修改class文件,而不用反编译,方法如下:

    import java.io.DataInput;
    import java.io.DataInputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.IOException;
    
    import org.gjt.jclasslib.io.ClassFileWriter;
    import org.gjt.jclasslib.structures.CPInfo;
    import org.gjt.jclasslib.structures.ClassFile;
    import org.gjt.jclasslib.structures.InvalidByteCodeException;
    import org.gjt.jclasslib.structures.constants.ConstantUtf8Info;
    
    public class Test {
    	/**
    	 * 修改class
    	 * 
    	 * @param filePath
    	 * @param oldString
    	 * @param newString
    	 */
    	public static void modifyClass(String filePath, String oldString, String newString) {
    		try {
    			// 读取class文件
    			FileInputStream fis = new FileInputStream(filePath);
     
    			DataInput di = new DataInputStream(fis);
    			ClassFile cf = new ClassFile();
    			cf.read(di);
    			CPInfo[] infos = cf.getConstantPool(); // 将class文件内容读成数组
     
    			for (int i = 1; i < infos.length; i++) {
    				if (infos[i].getTagVerbose().equals("CONSTANT_Utf8_info")) { // 取class中代码信息
    					ConstantUtf8Info info = (ConstantUtf8Info) infos[i];
    					if (info.getVerbose().equals(oldString)) { // 得到要替换的string的位置
    						info.setBytes(newString.getBytes()); // 替换为新的string
    						infos[i] = info;
    					}
    				}
    			}
     
    			// 保存修改后的class
    			cf.setConstantPool(infos);
    			fis.close();
    			File f = new File(filePath);
    			ClassFileWriter.writeToFile(f, cf);
    		} catch (InvalidByteCodeException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (IOException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
     
    	}
    }
    

    需要使用到的jar,参见:https://download.csdn.net/download/yanjingtp/10331860

    展开全文
  • Java 文件内容修改(二)

    千次阅读 2018-03-24 11:09:18
    上一篇博客 Java 文件内容修改(一)点击打开链接 中修改文件内容的方法,当文件出现换行时就会有错误。错误结果如下:运行前文件内容:运行后:发现内容缺少。又发现了另外一种方法:/** * 文件内容替换 * @param...

    上一篇博客 Java 文件内容修改(一)点击打开链接 中修改文件内容的方法,当文件出现换行时就会有错误。错误结果如下:

    运行前文件内容:


    运行后:


    发现内容缺少。

    又发现了另外一种方法:

    /**
    	 * 文件内容替换
    	 * @param filePath
    	 * @param oldstr
    	 * @param newStr
    	 */
    	private static void autoReplace(String filePath, String oldstr, String newStr) {
    		File file = new File(filePath);
    		Long fileLength = file.length();
    		byte[] fileContext = new byte[fileLength.intValue()];
    		FileInputStream in = null;
    		PrintWriter out = null;
    		try {
    			in = new FileInputStream(filePath);
    			in.read(fileContext);
    			// 避免出现中文乱码
    			String str = new String(fileContext, "utf-8");
    			str = str.replace(oldstr, newStr);
    			out = new PrintWriter(filePath);
    			out.write(str);
    		} catch (IOException e) {
    			e.printStackTrace();
    		} finally {
    			try {
    				out.flush();
    				out.close();
    				in.close();
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    		}
    
    	}

    这个不管文件内容是怎样,都可以实现,还可以设置编码集,避免中文乱码。

    测试:


    运行前文件内容:


    运行后文件内容:


    展开全文
  • Java对文件和文件内容进行修改

    万次阅读 多人点赞 2019-05-07 22:07:14
    Java对文件和文件内容进行修改 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 开发工具与关键技术:My Eclipse 10 ,Java 作者:陈显其 撰写时间:2019/5/7 ~~~~~~~~~~~~~~~~~~...

    Java对文件和文件内容进行修改

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    开发工具与关键技术:My Eclipse 10  ,Java

    作者:陈显其

    撰写时间:2019/5/7

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Java修改文件需要用到IO流,首先用把要修改的文件通过File类给弄进来,文件的新建、删除、目录都可以用File类进行操作,对目录也能操作,但不可以对文件的内容进行访问和操作,想操作文件的内容则需要使用输入/输出流。

    用File类把文件获取到之后,File类里带着方法里有可以新建、删除、重命名文件的方法,对文件重命名时,如果对文件的路径进行修改,那么文件的位置就会发生变化,重命名某种意义上等同于移动,如下图中,在路径中加上一段

    文件就从外面到了新建中这个文件夹里了

      

    修改文件的内容用OutputStream和Writer作为基类,获取到文件,然后用实例的文件名点Writer(要加进去的内容)的方法添加文件内容,记得先把流里的数据全部推出去,然后才能关闭流

     

    但是,这样会把文件里的原数据替换掉,也就是说之前的数据都没了,文件里保存的是现在Java程序刚添加的东西,适用于复制文件或者给新建的文件添加数据的时候用,如果是想在源数据基础上添加数据,建议使用RandomAccessFile类,如果是想加在最后面的话,需要吧指针seek调到最后,不然会默认添加到最前面去,

    这样就把数据加进去了,但是,在想在中间的某处添加数据的话这样是不行的,因为这样添加的话会把后面的数据给覆盖掉,想在中间添加东西,要先把会被覆盖掉的数据给读取出来存到临时数组中,如下面的那样, 把插入点后面的数据存入数组里

    然后把指针重新调到插入点,添加想添加插入的数据,然后把原本被放到别的地方的源文件的数据读取出来,再给它重新加上,这样就在中间给添加新的数据进去了

    修改数据则是把要修改的那一段数据找出来,把想要数据给要修改的数据给覆盖掉,删除也可以这么能做,把要删除的那一段数据后面的数据拿出来,把指针调到要删除的数据前,然后直接给覆盖掉,这样可以当做删除来用

    展开全文
  • JAVA 读取文件并更改文件内容

    万次阅读 2016-06-20 14:24:50
     private void autoReplace(String filePath,String outPath) throws IOException{  File file=new File(filePath);  Long fileLength=file.length();  byte[] fileContext=new byte[fileLength.intValue...
  • java 修改.class 文件内容

    万次阅读 2018-05-21 17:27:49
    无源码的情况下,修改.class文件内容:1、在开发工具(idea)中建立一个包名、类名完全相同的类文件。2、将.class文件中的内容复制到自己新建的类中进行修改.3、完成后,重新编译、启动,修改内容生效。...
  • java修改properties文件 丢失内容

    千次阅读 2017-01-14 21:26:07
    基于java.util.Properties类写了一个修改属性文件的方法。测试的时候发现,该方法可以修改文件指定key的value,但是除了修改的key和value外,其他的内容全部被清除了
  • java修改文件的编码

    2017-07-23 19:31:34
    java修改文件的编码
  • Java 文件内容修改(一)

    千次阅读 2018-03-16 10:29:36
    遇到一个需求,需要修改文件中的内容... * 修改文件内容 * * @param fileName * @param oldstr * @param newStr * @return */ private static boolean modifyFileContent(String fileName, String o...
  • java中读出txt文件内容修改怎么写入原txt文件 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; ...
  • import java.io.*; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @author: zhaoxu * @description: */ public class test { static Pattern pattern = Pattern.compile("\'(.*?)\'...
  • 对指定目录下的一篇文本文档实现关键字的替换,或者对图片等其他文件进行替换
  • java修改class文件

    2018-12-28 14:43:37
    java修改class文件整个项目文件,需要结合jclasslib bytecode viewer来查看你修改的内容
  • java 修改文件的局部内容

    千次阅读 2013-08-01 00:53:56
    /** * 修改文件中的某一部分的数据测试:将字定位置的字母改为大写 * @param fName :要修改文件名字 * @param start:起始字节 * @param len:要修改多少个字节 * @return :是否修改成功 * @throws ...
  • 使用java程序修改本地文件部分内容

    千次阅读 2017-09-15 11:03:37
    * 修改本地文件内容 */ public class AppModifyTest { /** * 读取文件内容 * * @param filePath * @return */ public String read(String filePath) { BufferedReader br = null;
  • java配置文件property文件内容修改

    千次阅读 2014-09-14 18:45:20
    // 修改sitename的属性值 prop.setProperty("smsconfig", value); // 文件输出流 FileOutputStream fos = new FileOutputStream(propertyFilePath); // 将Properties集合保存到流中 prop.store...
  • 假设一个项目里有n个文件,n个文件中有n个无用的注释,这些注释都是这种格式的 ``` /*无效资源开始 System.out.println("无效的内容"); 无效资源结束*/ ``` 怎么才能通过java,把这些注释都删除掉?
  • 从txt中读取某一行内容,修改这一行内容,如在这一行末尾加一个字母A,再重新写入文件,修改文件内容。 test.txt: !23343 abc. !2342 werwr. #sfs 32 wedx. !34 dfef. 文件每行都是以“.”结尾,读取某一...
  • 关于json格式,java主要有二种解析方式(还有一种谷歌的解析用的比较少): ... ...下面是一段修改json文件的代码,用的第二种方式 大概思路就是将haisdb对象中的数据库连接(端口和地址):统一...
  • java文件内容添加头

    千次阅读 2017-12-08 16:47:55
    1.小文件添加头部内容 代码实现: package com.xtm.test; import java.io.RandomAccessFile; public class Main { public static final String PATH = "F://a.txt"; public static void main...
  • java读取ftp文件,并获取文件内容

    千次阅读 2019-07-03 10:55:45
    以下介绍的是在ftp上获取csv文件(类似excel文件)上的信息,并且打印出来,具体的操作会在代码的注释中说明 创建接口 import java.io.InputStream; import java.util.ArrayList; import org.apache.commons.net....
  • ![图片说明]... 新创建了一个json文件。生效必须的在这个js的var a={};里面加上新创建的json名字。一觉下面对应的 xx : function(t, e, n) { t.exports = n.p + "data/xx.json?MD5码" },
  • java 读取Excel文件中的内容 java 读取Excel文件中的内容
  • Java 怎样修改文本文件内容

    万次阅读 2017-04-13 15:04:44
    方式很多,读出来再写入进去,...import java.io.*; public class TestBufferStream{ public static void main(String[] args){ try{ BufferedReader in = new BufferedReader(new FileReader("in.txt"))
  • Java读取txt文件和写入txt文件

    万次阅读 多人点赞 2016-05-25 23:16:26
    原文: Java读取txt文件和写入txt文件Java程序时经常碰到要读如txt或写入txt文件的情况,但是由于要定义好多变量,经常记不住,每次都要查,特此整理一下,简单易用,方便好懂! package edu.thu.keyword.test; ...
  • java修改properties配置文件中的内容 /** * 修改properties配置文件中data_time的值 * @param bigtime 开始时间 * @param endtime 结束时间 * @throws IOException */ public static void ...
  • import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileWrite...
  • Java修改文件最后一行数据

    千次阅读 2017-12-01 16:13:15
    Java修改文件最后一行数据

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 858,999
精华内容 343,599
关键字:

java如何修改文件内容

java 订阅