码迷,mamicode.com
首页 > 其他好文 > 详细

取出文件中字符串内容

时间:2015-08-27 22:37:51      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

为了简化工作,避免手工操作,写了一个读取文件中字符串的小工具类

如果你想获取文件中字符串的内容(例如 XXX ="123" 得到 123)可以使用本工具

 public static void main(String[] args) {
        new SubStringInFile().readAndWrite();
    }
    /*
     * 读取文件,将字符串("abc"中abc)取出至文件
     * 同行中去重
     * */
    public void readAndWrite(){
        FileReader fr = null;
        FileWriter fw = null;
        BufferedReader br = null;
        BufferedWriter bw = null;
        try {
            File inFile = new File("original.txt");
            fr = new FileReader(inFile);
            br = new BufferedReader(fr);

            File outFile = new File("subFile.txt");
            fw = new FileWriter(outFile);
            bw = new BufferedWriter(fw);

            String str = "";
            while((str=br.readLine()) != null){
                List<Integer> index = new ArrayList<Integer>();
                //搜索 " add("的位置)
                for(int i=0;i<str.length();i++){
                    String ch = str.charAt(i)+"";
                    if("\"".equals(ch)){
                        index.add(i);
                    }
                }
                StringBuffer sb = new StringBuffer();
                //截取""中的内容,同行中去重
                for (int i = 0; i < index.size(); i += 2) {
                    int begin = index.get(i);
                    int end = index.get(i+1);
                    String temp = str.substring(begin+1, end);
                    String[] sbs = sb.toString().split(" ");
                    for (String s : sbs) {
                        if(s.equals(temp)){
                            temp = "";
                        }
                    }
                    sb.append(temp+" ");
                }
                bw.write(sb.toString());
                bw.newLine();
                bw.flush();
            }
            bw.close();
            br.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

 

 

例如有以下代码 想直接到数据库中执行,查看结果

sb.append("select count(id) ");
sb.append("from table_a where 1=1 ");

将其放入项目根目录下的 original.txt中

执行程序 结果在subFile中

 

程序还是很简单的,支持同行中简单的去重

可以根据自己的需要来更改

比如通过stringbuffer 来将文件中字符串拼接在一起 等等

 

取出文件中字符串内容

标签:

原文地址:http://www.cnblogs.com/JaryH/p/4764612.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!