我有一个D:\resin3\deploy\yncm\courseware\1231\menu.js的文件,我要把里面course_name = "123123";的值读出来.替换一个新的值在写进去,请问各位大假,怎么做这个程序?很及.

解决方案 »

  1.   

    我想在文件中查到course_name = "123123",然后把"123123"改成"555555"怎么做
      

  2.   

    这个也太麻烦了吧。做什么系统会要用到这样的东东。
    读取文件到内存中,然后用String.replace把它给换了。
      

  3.   


    /**
     * 
     */
    package com.ecc.test1016;import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.IOException;/**
     * @author Liu Shijie
     * 
     */
    public class ReplaceString { String path = "C:\\j2sdk1.4.2\\README.txt";
    File file;
    File file_bak;
    FileReader fr;
    BufferedReader br;
    FileOutputStream os; /**
     * 
     */
    public ReplaceString() {
    file = new File(path);
    file_bak = new File(file.getPath()+file.getName()+".bak");
    } public void doReplace() {
    if (file.exists()) {
    try {
    fr = new FileReader(file);
    br = new BufferedReader(fr);
    os = new FileOutputStream(file_bak);
    String line = "";
    String line_bak = "";
    while ((line = br.readLine()) != null) {
    if(line.indexOf("course_name =")!=-1){
    System.out.println(line);
    line = line.replaceAll("course_name = \"123123\"",
    "course_name = \"555555\"");
    System.out.println(line_bak);

    }
    os.write(line.getBytes(), 0, line.getBytes().length);
    os.write("\n".getBytes());
    }
    fr.close();
    br.close();
    os.close();
    file.delete();
    file_bak.renameTo(new File(path));
    } catch (FileNotFoundException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    } /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    new ReplaceString().doReplace();
    }}
      

  4.   


    import java.io.*;/**
     * 指定文件内容的替换,输出到新文件
     * @author 张斌(小神)
     *
     */
    public class ReplaceString_File {

    /**
     * 
     * @param pathName : 读取文件路径
     * @param newPathName : 输出文件路径
     * @param course : 要修改的字串
     * @param value : 新字串
     * @throws IOException
     */
    public void replaceString(String pathName, String newPathName, String course, String value) throws IOException {
    File file = new File(pathName);
    File file_output = new File(newPathName);
    if (file.exists()) {
    BufferedReader br = new BufferedReader(new FileReader(file));
    BufferedWriter bw = new BufferedWriter(new FileWriter(newPathName));
    String context;
    while ((context = br.readLine()) != null) {
    context.replace(course, value);
    bw.write(context);
    bw.newLine();
    //System.out.println(context);
    }
    bw.flush();
    br.close();
    bw.close();
    }
    }

    public static void main(String[] args) {
    ReplaceString_File rsf = new ReplaceString_File();

    try {
    rsf.replaceString("F:\\321.txt", "F:\\123.txt", "def=456", "def=654");
    } catch (IOException e) {
    e.printStackTrace();
    }
    }}
      

  5.   

    不建议用java做 楼主应该改变想法思路不了解你的需要但是你的想法不好,将来会很麻烦,既然是js那么就可以在web层根据实际需要改,最麻烦不过使用ajax,但从设计上好过使用java类修改js文件