I need to write a content to file in a single statement something like FileUtils.writeStringToFile.

Is there any alternative to it since it is deprecated?

1

5 Answers

By going through this documentation, It states that:

Deprecated. 2.5 use writeStringToFile(File, String, Charset) instead Writes a String to a file creating the file if it does not exist using the default encoding for the VM. 

You can follow this example:

final File file = new File(getTestDirectory(), "file_name.txt"); FileUtils.writeStringToFile(file, "content", "ISO-8859-1"); 

You can pass (String) null in your argument if you don't want to pass the encoding.

For more information, you can go through the link: Usage link

Use this one

File file = ... String data = ... try{ FileUtils.writeStringToFile(file, data, Charset.defaultCharset()); }catch(IOException e){ e.printStackTrace(); } 

You can use Files from the Java standard library aswell - unless you need to use apache commons.

import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import java.nio.file.StandardOpenOption; // to write to your file use try { // To overwrite Files.write(Paths.get("Your\\path"), "YourString".getBytes(), StandardOpenOption.TRUNCATE_EXISTING, StandardOpenOption.CREATE); // To append to the file Files.write(Paths.get("Your\\path"), "YourString".getBytes(), StandardOpenOption.WRITE, StandardOpenOption.CREATE); } catch (IOException e) { e.printStackTrace(); } 
0

The fix is to add Charset.defaultCharset() as the 3rd argument.

E.g. change from

writeStringToFile(file, data) 

to

writeStringToFile(file, data, Charset.defaultCharset()) 

Source:

The documentation says:

Deprecated. 2.5 use writeStringToFile(File, String, Charset) instead

The source code for the deprecated function is:

 @Deprecated public static void writeStringToFile(final File file, final String data) throws IOException { writeStringToFile(file, data, Charset.defaultCharset(), false); } 

Have a look From your question I think you are searching option for FileUtils.writeStringToFile.
This link will provide the same.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.