Writing UTF-8 Encoded Data in Java

In this section, you will learn, how to write text in a file in UTF-8 encoded format. UTF-8 is the byte-oriented encoding form of Unicode.

Writing UTF-8 Encoded Data in Java



In this section, you will learn, how to write text in a file in UTF-8 encoded format. It is an 8-bit encoding scheme in which the ASCII characters are encoded using an 8-bit (a byte). 
 The program shown below writes text into the specified file in the UTF-8
encoded format. The program takes an input for the file name. If the mentioned file exists then the string "WelCome to RoseIndia.Net" is written to the file and the program will show the message : "Written Process Completed"; Otherwise the program will give an appropriate error message.

There are few methods and constructor used in this program to writing text in a file in the UTF-8 Encoded format these are follows : 

BufferedWriter out = 
new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file),"UTF8"));

The above statement has been written in this program creates a instance of the BufferedWriter class using OutputStreamWriter and FileOutputStream constructors. Above code also defines the format of the text in which specified text has to be written in the file.

out.write("WelCome to RoseIndia.Net");

This is the write( ) method of BufferedWriter class used to mention the text which has to be written in the specified file. This method directly writes the specified file with passed string.


This is the close() method of BufferedWriter class used to close the created buffer.

Here is the code of program:  

import java.io.*;

  public class WriteUTF8{
public static void main(String[] args)throws IOException{
  BufferedReader in = 
BufferedReader(new InputStreamReader(System.in));
  System.out.print("Enter File name : ");
String str = in.readLine();
File file = new File(str);

System.out.println("File does not exist");
BufferedWriter out = new BufferedWriter(new OutputStreamWriter
new FileOutputStream(file),"UTF8"));
out.write("WelCome to RoseIndia.Net");
System.out.println("Written Process Completed.");
catch(UnsupportedEncodingException ue){
System.out.println("Not supported : ");
catch(IOException e){

Output Of the Program:

C:\nisha>javac WriteUTF8.java

C:\nisha>java WriteUTF8
Enter File name : Filterfile.txt
Written Process Completed


Download this example.



We have 1000s of tutorials on our website. Search Tutorials tutorials on our website.

Share on Google+Share on Google+

Writing UTF-8 Encoded Data in Java

Posted on: April 17, 2007 If you enjoyed this post then why not add us on Google+? Add us to your Circles



Discuss: Writing UTF-8 Encoded Data in Java   View All Comments

Post your Comment

Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
April 20, 2012
not writing UTF 8 data

i tried this code it is writing data to the file but in file data other than eng language is displayes as ? or squares
July 3, 2012
What type of text its run

What type of text its run? Plz ans me
Phoenix Snake
August 3, 2012
Nice article, Thankyou

This code help me out :), very useful thanks