You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Henri Yandell (JIRA)" <ji...@apache.org> on 2010/07/21 19:06:51 UTC

[jira] Commented: (IO-199) Replace strings in file

    [ https://issues.apache.org/jira/browse/IO-199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12890778#action_12890778 ] 

Henri Yandell commented on IO-199:
----------------------------------

What about a filter notion that you placed between an InputStream and an OutputStream?

So:

 df= new RegexDataFilter("from text", "to text")   // or Matcher, Pattern based etc
 FileUtils.filterData(in, out, df)

> Replace strings in file
> -----------------------
>
>                 Key: IO-199
>                 URL: https://issues.apache.org/jira/browse/IO-199
>             Project: Commons IO
>          Issue Type: New Feature
>          Components: Utilities
>            Reporter: Alexander Stroell
>            Priority: Minor
>
> A method, that can replace strings (keys) in a file would be very useful. 
> For example if you have a file with the following text:
> {noformat}
> The packet must arrive between @dateFrom and @dateTo. 
> {noformat}
> You can now replace the "keys" with a value of your choice..
> Perhaps something like this:
> {code}	
> public static void replaceStrings(File inputFile, File outputFile, List<KeyValuePair<String, String>> replacements) throws IOException{
> 		BufferedReader in = new BufferedReader(new FileReader(inputFile));
> 		BufferedWriter out = new BufferedWriter(new FileWriter(outputFile));
> 		
> 		String line;
> 		
> 		while ((line = in.readLine()) != null) {
> 			for(KeyValuePair<String, String> kvp : replacements){
> 				line = line.replace(kvp.getKey(), kvp.getValue());
> 			}
> 			out.write(line);
> 			out.newLine();
> 		}
> 		out.flush();
> 		out.close();
> 		in.close();
> 	}
> {code}
> I think it should also be possible, to replace the strings in the inputfile so you don't have to create a new file (outputfile)
> Regards Alex

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.