Reading a file in UTF-8 format

Hi,
I am trying to read a UTF-8 file but cannot see how to tell the file reader ( BufferedREader) to expect a UTF-8 format.
I can write to a UTF-8 formatted file ok using a Charset object in the FileWriter constructor but I can't see the equivalent solution for reading.
Any help appreciated
Thanks ... J

import java.io.*;
class Test127 {
    public static void main(String[] args) throws FileNotFoundException, UnsupportedEncodingException, IOException {
        BufferedReader br = new BufferedReader (new InputStreamReader (new FileInputStream (args[0]), "UTF-8"));
        String line = br.readLine();
        if (line != null)
            System.out.println (line);
        br.close();

Similar Messages

  • Create new text file in UTF-8 format by default

    I'm working a lot with UTF-8 text files and mainly in this format. It's becoming annoying when I have to manually save every text file as UTF-8.  After several trial-and-errors, I've made up a procedure that I've put in a blog. I think I could share
    it here for those who need it.  Hope it helps.
    http://instrumenti-meliora.blogspot.com/2014/04/create-new-text-file-in-utf-8-format-by.html

    You've made a procedure?
    Are you sure you didn't :
    Didn't what?
    https://www.google.com/#q=change+notepad+default+encoding
    Well, I'm not sure what you want me to see, but your search keywords do
    NOT make sense.  You do note change *Notepad* default encoding.  What you can change is a
    TEXT file's default encoding.
    Well, of course, if you have access to Notepad source code and you're able to change it and re-compile again, then you could really say you change Notepad's "default encoding", which I suppose would mean "default encoding every time we save".
    Why wouldn't you just provide a link (or some attribution) to the top result
    http://answers.microsoft.com/en-us/windows/forum/windows_7-windows_programs/default-utf-8-encoding-for-new-notepad-documents/525f0ae7-121e-4eac-a6c2-cfe6b498712c
    or a link to watch this done on youtube?
    http://www.youtube.com/watch?v=GnL6smxQE9k
    The title of that forum post and Youtube video is a non-sense.  New
    "Notepad" document?  Come on!  That's apparently how a newbie think what it is and it's very likely he has not a clue what it is and what he is doing.  And what if I don't use Notepad to create such file?  If I
    use UltraEdit, then mine should be "UltraEdit" document and that should be different from Notepad document, correct? LOL
    The fact that you're able to find this video would also mean you're thinking like him in that the file is really called Notepad document LOL
    For your information, that's called a text file (or document if you prefer this prettier term).  It's also called plain text file.
    Now, let's see the content of both links:
    First of all, why did they tell people to create a new text file somewhere and then
    COPY it to template folder?  That's really so dumb
    LOL  Isn't it more intelligent to create such file directly INSIDE the folder?
    Secondly, their procedures are not foolproof.  What if the Windows directory is not c:\windows?  They should tell people to open %Systemroot%\ShellNew instead.  I suppose they don't even know how this folder is called because
    nowhere is the term "template folder" ever mentioned.
    Thirdly, what if that folder doesn't work for unknown reason (which might happen in XP)?  Did they give any hint to a "failover" folder?  No, they didn't.  But I do in my procedure.
    Fourthly, they are saying as if the file name has to be "TXTUTF-8.txt", but actually we can call it whatever we like.  But smart people would have figured this out at the end.
    5 (I'd stop saying fifthly and so on LOL) I'm not sure it's necessary (or recommended) to change "fSavePageSettings" & "fSaveWindowPositions" DWORD values for Notepad as "advised" in that answer.
    As a side-note, I don't know what
    http://www.pc1news.com/saving-changes-to-notepad-configuration-1216.html is supposed to give but when I open this, I got some uTorrent warning.  Really seems like some malware webpage which tries to deceive people!
    I actually searched how a (generic) new file is created and started from there.
    So, maybe next time when you want to criticize or discredit somebody else, try to be more expert first? ;)

  • Convert a UTF-16 format  file to UTF-8 format

    Hi all
          I have a xml file in UTF-16 format I have to convert it into UTF-8 format so that
    it can be opened with Internet Explorer.now when i am opening the file its showing error"<b>Whitespace is not allowed at this location. Error processing resource 'file</b>"
                    the file content is given below
                 < ? x m l   v e r s i o n = " 1 . 0 "   e n c o d i n g = "
    u t f - 8 " ? >
    < _ G L B - R G T X _ O R D E R S C P G >
         < I D O C   B E G I N = " 1 " >
             < E D I _ D C
    4 0   S E G M E N T = " 1 " >
                 < T A B N A M > E
    D I _ D C 4 0 < / T A B N A M >
                 < M A N D T > 1
    5 2 < / M A N D T >
                 < D O C N U M > 0 0 0 0 0 0
    0 0 0 2 7 5 9 7 2 2 < / D O C N U M >
                 < D O C R
    E L > 6 2 0 < / D O C R E L >
                 < S T A T U S > 3
    0 < / S T A T U S >
                 < D I R E C T > 1 < / D I R
    E C T >
                 < O U T M O D > 2 < / O U T M O D >
             < E X P R S S / >
                 < T E S T / >
          < I D O C T Y P > O R D E R S 0 5 < / I D O C T Y P >
                 < C I M T Y P > / G L B / R G T X _ O R D E R S
    C P G < / C I M T Y P >
                 < M E S T Y P > O R D C
    H G < / M E S T Y P >
                 < M E S C O D / >
         < M E S F C T / >
                 < S T D / >
    < S T D V R S / >
                 < S T D M E S > O R D C H G <
    / S T D M E S >
                 < S N D P O R > S A P G E 7 < /
    S N D P O R >
                 < S N D P R T > L S < / S N D P R
    T >
                 < S N D P F C / >
                 < S N D P R
    N > G E 7 Q A R 3 1 5 2 < / S N D P R N >
                 < S N
    D S A D / >
                 < S N D L A D / >
                 < R
    C V P O R > A 0 0 0 0 0 0 0 4 0 < / R C V P O R >
      < R C V P R T > L S < / R C V P R T >
                 < R C V
    P F C > L S < / R C V P F C >
                 < R C V P R N > R
    L E C P G W D I 1 < / R C V P R N >
                 < R C V S A
    D / >
                 < R C V L A D / >
                 < C R E D
    A T > 2 0 0 7 0 6 0 5 < / C R E D A T >
                 < C R E
    T I M > 1 5 4 1 5 3 < / C R E T I M >
                 < R E F I
    N T / >
                 < R E F G R P / >
                 < R E F
    M E S / >
                 < A R C K E Y / >
                 < S E
    R I A L > B U S 2 0 1 2       1 1 0 0 0 0 0 3 0 1 < / S E R
    I A L >
             < / E D I _ D C 4 0 >
             < E 1 E D K
    0 1   S E G M E N T = " 1 " >
                 < C U R C Y > E U
    R < / C U R C Y >
                 < W K U R S > 1 . 0 0 0 0 0 <
    / W K U R S >
                 < Z T E R M > Z 0 0 1 < / Z T E R
    M >
                 < B S A R T > N B < / B S A R T >
       < B E L N R > 4 5 2 0 0 2 2 0 7 2 1 1 0 0 0 0 0 3 0 0 < /
    B E L N R >
                 < R E C I P N T _ N O > 0 1 0 0 0 0
    0 0 0 5 < / R E C I P N T _ N O >
                 < A B R V W _
    B E Z > B U S 2 0 1 2       1 1 0 0 0 0 0 3 0 0 < / A B R V
    W _ B E Z >
                 < _ G L B - R G T _ C H A N G E F L
    A G   S E G M E N T = " 1 " >
                     < Q U A L F >
    0 0 2 < / Q U A L F >
                     < F L A G > X < / F L
    A G >
                 < / _ G L B - R G T _ C H A N G E F L A G
    >
                 < _ G L B - R G T _ C P G D A T A   S E G M E
    N T = " 1 " >
                     < L A N G U > e n < / L A N G
    U >
                     < C O N S I G N _ F L A G > S < / C O N
    S I G N _ F L A G >
                     < I N D I C A T > S < /
    I N D I C A T >
                 < / _ G L B - R G T _ C P G D A
    T A >
             < / E 1 E D K 0 1 >
             < E 1 E D K 1 4 
    S E G M E N T = " 1 " >
                 < Q U A L F > 0 1 4 <
    / Q U A L F >
                 < O R G I D > Z 2 0 0 < / O R G I
    D >
             < / E 1 E D K 1 4 >
             < E 1 E D K 1 4  
    S E G M E N T = " 1 " >
                 < Q U A L F > 0 0 9 < /
    Q U A L F >
                 < O R G I D > 0 0 3 < / O R G I D >
             < / E 1 E D K 1 4 >
             < E 1 E D K 1 4   S E
    G M E N T = " 1 " >
                 < Q U A L F > 0 1 3 < / Q U
    A L F >
                 < O R G I D > N B < / O R G I D >
       < / E 1 E D K 1 4 >
             < E 1 E D K 1 4   S E G M E
    N T = " 1 " >
                 < Q U A L F > 0 1 1 < / Q U A L F
    >
                 < O R G I D > Z 2 0 1 < / O R G I D >
    < / E 1 E D K 1 4 >
             < E 1 E D K 0 3   S E G M E N
    T = " 1 " >
                 < I D D A T > 0 1 2 < / I D D A T >
                 < D A T U M > 2 0 0 7 0 5 1 8 < / D A T U M >
           < / E 1 E D K 0 3 >
             < E 1 E D K 0 3   S E G
    M E N T = " 1 " >
                 < I D D A T > 0 1 1 < / I D D
    A T >
                 < D A T U M > 2 0 0 7 0 5 1 8 < / D A T U
    M >
             < / E 1 E D K 0 3 >
             < E 1 E D K A 1  
    S E G M E N T = " 1 " >
                 < P A R V W > A G < / P
    A R V W >
                 < P A R T N > 2 0 0 0 0 1 2 < / P A R
    T N >
                 < T E L F 1 > + 4 1 2 1 9 2 4 1 8 6 8 < /
    T E L F 1 >
                 < T E L F X > + 4 1 2 1 9 2 4 1 8 6
    7 < / T E L F X >
                 < B N A M E > P l a n t   O p
    e r .   B u y e r < / B N A M E >
                 < P A O R G >
    Z 2 0 0 < / P A O R G >
                 < O R G T X > E u r o p
    e < / O R G T X >
                 < P A G R U > 0 0 3 < / P A G
    R U >
             < / E 1 E D K A 1 >
             < E 1 E D K A 1 
    S E G M E N T = " 1 " >
                 < P A R V W > L F < /
    P A R V W >
                 < P A R T N > 0 1 0 0 0 0 0 0 0 5 <
    / P A R T N >
                 < N A M E 1 > I n t e r n a t i o
    n a l   A g r o . < / N A M E 1 >
                 < S T R A S >
    1 4   R u e   d e   S a h o n e < / S T R A S >
    < S T R S 2 > C h r i s t < / S T R S 2 >
                 < P F
    A C H > 1 5 5 < / P F A C H >
                 < O R T 0 1 > L y
    o n < / O R T 0 1 >
                 < P S T L Z > 1 0 2 0 4 < /
    P S T L Z >
                 < L A N D 1 > F R < / L A N D 1 >
               < T E L F 1 > 0 8 1 < / T E L F 1 >
    < S P R A S > E < / S P R A S >
                 < B N A M E > A
    l f r e d o < / B N A M E >
                 < I L N N R > 7 6 5
    4 3 2 1 5 4 3 2 1 5 < / I L N N R >
                 < S P R A S
    _ I S O > E N < / S P R A S _ I S O >
                 < _ G L B
    - R G T _ T A X C O D E S   S E G M E N T = " 1 " >
            < S P T N U M > 3 4 5 < / S P T N U M >
        < C Y T A X N U M > 4 5 6 < / C Y T A X N U M >
            < O T R I N F O > F R 9 8 7 1 2 5 6 4 4 4 2 < / O T
    R I N F O >
                 < / _ G L B - R G T _ T A X C O D E
    S >
             < / E 1 E D K A 1 >
             < E 1 E D K A 1  
    S E G M E N T = " 1 " >
                 < P A R V W > E K < / P
    A R V W >
                 < N A M E 1 > F R   P L   N e u t r a
    l i a < / N A M E 1 >
                 < N A M E 2 > G T   C o p
    y   R e f e r e n c e   F a c t o r y < / N A M E 2 >
          < S T R A S > G l o b e   S t r e e t   Z 2 0 3 < / S
    T R A S >
                 < O R T 0 1 > N e u t r a l i a < / O
    R T 0 1 >
                 < P S T L Z > 9 9 9 9 9 < / P S T L Z
    >
                 < L A N D 1 > F R < / L A N D 1 >
    < B N A M E > A l e s s a n d r o   V e r r e s c h i < / B
    N A M E >
                 < I L N N R > 5 0 0 0 2 4 3 0 0 0 4 9
    7 < / I L N N R >
                 < _ G L B - R G T _ T A X C O
    D E S   S E G M E N T = " 1 " >
                     < C R N U M
    > 2 9 8 < / C R N U M >
                     < S P T N U M > 3 9
    8 < / S P T N U M >
                     < C Y T A X N U M > 4 9
    8 < / C Y T A X N U M >
                 < / _ G L B - R G T _ T
    A X C O D E S >
                 < _ G L B - R G T _ C P G M I D
      S E G M E N T = " 1 " >
                     < S M T P _ A D D
    R > a l e s s a n d r o . v e r r e s c h i @ n e s t l e .
    c o m < / S M T P _ A D D R >
                 < / _ G L B - R G
    T _ C P G M I D >
             < / E 1 E D K A 1 >
             < E
    1 E D K A 1   S E G M E N T = " 1 " >
                 < P A R V
    W > L S < / P A R V W >
                 < P A R T N > 0 1 0 0 0
    0 0 0 0 5 < / P A R T N >
                 < I L N N R > 7 6 5 4
    3 2 1 5 4 3 2 1 5 < / I L N N R >
             < / E 1 E D K A 1
    >
             < E 1 E D K A 1   S E G M E N T = " 1 " >
         < P A R V W > W E < / P A R V W >
                 < N A M
    E 1 > F R   P L   N e u t r a l i a < / N A M E 1 >
        < N A M E 2 > G T   C o p y   R e f e r e n c e   F a c
    t o r y < / N A M E 2 >
                 < S T R A S > G l o b e
      S t r e e t   Z 2 0 3 < / S T R A S >
                 < O R T
    0 1 > N e u t r a l i a < / O R T 0 1 >
                 < P S T
    L Z > 9 9 9 9 9 < / P S T L Z >
                 < L A N D 1 > F
    R < / L A N D 1 >
                 < _ G L B - R G T _ E 1 E D K
    A 1   S E G M E N T = " 1 " / >
             < / E 1 E D K A 1 >
             < E 1 E D K A 1   S E G M E N T = " 1 " >
       < P A R V W > R G < / P A R V W >
                 < N A M E
    1 > G L O B E   R e f e r e n c e   F r a n c e < / N A M E
    1 >
                 < S T R A S > S t r e e t   1 < / S T R A S
    >
                 < O R T 0 1 > C i t y < / O R T 0 1 >
         < P S T L Z > 1 2 3 4 5 < / P S T L Z >
                 <
    L A N D 1 > F R < / L A N D 1 >
                 < I L N N R > 5
    0 0 0 2 4 3 0 0 0 7 0 1 < / I L N N R >
                 < _ G L
    B - R G T _ T A X C O D E S   S E G M E N T = " 1 " >
              < C O T A X N U M > 1 2 3 4 < / C O T A X N U M >
                     < C R N U M > 1 2 3 4 5 6 7 8 < / C R N U M
    >
                     < S P T N U M > 1 0 0 5 1 9 6 2 < / S P T
    N U M >
                     < C Y T A X N U M > 1 0 0 5 1 9 6 2
    < / C Y T A X N U M >
                     < O T R I N F O > 0 0
    0 0 0 0 0 5 6 7 8 9 < / O T R I N F O >
                     < J
    U R C O D E > 1 0 0 5 1 9 6 2 < / J U R C O D E >
      < / _ G L B - R G T _ T A X C O D E S >
             < / E 1 E
    D K A 1 >
             < E 1 E D K 0 2   S E G M E N T = " 1 " >
                 < Q U A L F > 0 0 1 < / Q U A L F >
    < B E L N R > 4 5 2 0 0 2 2 0 7 2 < / B E L N R >
       < D A T U M > 2 0 0 7 0 5 1 8 < / D A T U M >
    < U Z E I T > 1 4 0 4 4 0 < / U Z E I T >
             < / E 1
    E D K 0 2 >
             < E 1 E D K 1 8   S E G M E N T = " 1 "
    >
                 < Q U A L F > 0 0 1 < / Q U A L F >
       < T A G E > 3 0 < / T A G E >
                 < P R Z N T >
    2 . 0 0 0 < / P R Z N T >
             < / E 1 E D K 1 8 >
       < E 1 E D P 0 1   S E G M E N T = " 1 " >
                 <
    P O S E X > 0 0 0 1 0 < / P O S E X >
                 < A C T I
    O N > 0 0 2 < / A C T I O N >
                 < P S T Y P > 0 <
    / P S T Y P >
                 < M E N G E > 1 0 0 . 0 0 0 < / M
    E N G E >
                 < M E N E E > E A < / M E N E E >
             < B M N G 2 > 1 0 0 . 0 0 0 < / B M N G 2 >
         < P M E N E > E A < / P M E N E >
                 < V P R
    E I > 1 0 < / V P R E I >
                 < P E I N H > 1 < / P
    E I N H >
                 < N E T W R > 1 0 0 0 < / N E T W R >
                 < N T G E W > 8 0 0 < / N T G E W >
    < G E W E I > K G M < / G E W E I >
                 < M A T K
    L > P 2 0 < / M A T K L >
                 < B P U M N > 1 < / B
    P U M N >
                 < B P U M Z > 1 < / B P U M Z >
           < B R G E W > 1 0 0 0 < / B R G E W >
                 <
    W E R K S > Z 2 0 3 < / W E R K S >
                 < E 1 E D P
    0 4   S E G M E N T = " 1 " >
                     < M W S B T >
    0 . 0 0 < / M W S B T >
                 < / E 1 E D P 0 4 >
             < E 1 E D P 2 0   S E G M E N T = " 1 " >
           < W M E N G > 1 0 0 . 0 0 0 < / W M E N G >
           < A M E N G > 0 . 0 0 0 < / A M E N G >
       < E D A T U > 2 0 0 7 0 5 1 8 < / E D A T U >
         < E Z E I T > 1 4 5 0 0 0 < / E Z E I T >
       < _ G L B - R G T _ S L I D 0 1   S E G M E N T = " 1 " >
                         < E T E N R > 0 0 0 1 < / E T E N R >
                   < / _ G L B - R G T _ S L I D 0 1 >
       < / E 1 E D P 2 0 >
                 < E 1 E D P 1 9   S E G
    M E N T = " 1 " >
                     < Q U A L F > 0 0 1 < / Q
    U A L F >
                     < I D T N R > 0 0 0 0 0 0 0 0 0 0
    4 3 0 0 0 0 9 8 < / I D T N R >
                     < K T E X T
    > C a r t o n s   -   C e r e a l s   M i l k   2 4 x 4 5 0 
    g < / K T E X T >
                 < / E 1 E D P 1 9 >
        < E 1 E D P 1 9   S E G M E N T = " 1 " >
      < Q U A L F > 0 0 3 < / Q U A L F >
                     < I D
    T N R > 0 7 6 1 2 2 9 7 0 1 6 1 1 9 < / I D T N R >
        < / E 1 E D P 1 9 >
             < / E 1 E D P 0 1 >
    < E 1 E D S 0 1   S E G M E N T = " 1 " >
                 < S
    U M I D > 0 0 2 < / S U M I D >
                 < S U M M E > 1
    0 0 0 < / S U M M E >
                 < S U N I T > E U R < / S
    U N I T >
             < / E 1 E D S 0 1 >
             < E 1 E D S
    0 1   S E G M E N T = " 1 " >
                 < S U M I D > 0 0
    5 < / S U M I D >
                 < S U M M E > 0 < / S U M M E
    >
             < / E 1 E D S 0 1 >
         < / I D O C >
    < / _ G L
    B - R G T X _ O R D E R S C P G >

    Hi Saurabh,
    your xml is not wellformed coz there are spaces in the prolog between the first character '<' and the '?'. Coz of any reason there are spaces between all characters, that is making your document not readable for parsers including IE. For your task to convert to UTF-8 you can use a XSLT mapping with element "output" and attribut "encoding"
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
         <xsl:output encoding="UTF-8"/>
         <xsl:template match="/">
    Regards,
    Udo

  • Write file in UTF-16BE Format

    I am programming web page that runs SWF file (Flash movie) and servlet.
    The SWF file sends with URL command data to the server.
         send_lv.sendAndLoad("http://�", result_lv, "POST");The data at � UTF-8 (UTF-8 is the standard encoding for exchanging text, such as online mail systems. UTF is an 8-bit system.).
    At the servlet in doPost command I get the data with
    String temp = request.getParameter("smstext");I need to write the parameter �temp� into file in UTF-16BE Format, how I do it?
    I try almost everything

    Once you've got a String, you can get bytes corresponding to a specific encoding with the getBytes(String charset) method.
    In your case:byte[] bytes = temp.getBytes("UTF-16BE");Then you may write those bytes to a file using a FileOutputStream.
    http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html#getBytes(java.lang.String)
    http://java.sun.com/j2se/1.4.2/docs/api/java/io/FileOutputStream.html
    You should obtain the same result with an OutputStreamWriter, for which you can specify the encoding in the contructor, and then write the String directly:OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(fileName), "UTF-16BE");http://java.sun.com/j2se/1.4.2/docs/api/java/io/OutputStreamWriter.html

  • Placing the file in UTF-8 format in Target Directory

    Hi Experts,
    Can any one please tell me how to place a file in Target Directory by PI in UTF-8 format.
    It is a file to file PassThrough (no IR part) scenario and in receiver File Adapter I have used File Encoding as UTF-8
    but still PI is not placing the file in UTF-8 format in the Target Directory.
    Are there any modules by which the files are converted to UTF-8 format.
    Can anyone please help me out.
    Thanks and Regards,
    Prajwal

    Hi,
    Please let me know if I need to change the TransferMode,File Type and FileEncoding in both sender and receiver channel.
    I tried the below settings but still the file is not being placed in UTF-8.
    Sender CHannel:    TransferMode         Text
                                   FileType                  Text
                                   FileEncoding            UTF-8
    Receiver Channel    TransferMode         Binary
                                     FileType                  Text
                                     FileEncoding           tried with UTF-8 once and tried with blank
    Can any one throw some light here.
    Thanks and Regards,
    Prajwal

  • Writing files in UTF-8 format

    Hi,
    Our system is unicode enable and I want to write a file in UTF-8 format.
    I'tried  the following syntax.
    OPEN DATASET l_filename FOR OUTPUT IN TEXT MODE ENCODING UTF-8.
    and OPEN DATASET l_filename FOR OUTPUT IN TEXT MODE ENCODING default
    But when I check the file, it is in ANSI format. Is there a way we can force the system to write it in UTF-8 format?
    Thanks,
    Ramesh

    Hi Ramesh,
    You could try to use the following coding:
    *& Report ZUS_SDN_UC_XML_TO_UTF8_TRANSF
    REPORT zus_sdn_uc_xml_to_utf8_transf.
    define local data
    CONSTANTS:
    gc_encoding TYPE string VALUE 'UTF-8'.
    DATA:
    gd_result type string,
    go_ixml TYPE REF TO if_ixml,
    go_stream_factory TYPE REF TO if_ixml_stream_factory,
    go_encoding TYPE REF TO if_ixml_encoding,
    go_resstream TYPE REF TO if_ixml_ostream.
    DATA:
    gt_knb1 TYPE STANDARD TABLE OF knb1,
    gd_xml TYPE string,
    gt_xml TYPE TABLE OF string.
    START-OF-SELECTION.
    SELECT * FROM knb1 INTO TABLE gt_knb1 UP TO 10 ROWS
    WHERE bukrs = '1000'.
    go_ixml = cl_ixml=>create( ).
    go_stream_factory = go_ixml->create_stream_factory( ).
    go_encoding = go_ixml->create_encoding( character_set = gc_encoding
    byte_order = 0 ).
    go_resstream =
    go_stream_factory->create_ostream_cstring( gd_result ).
    CALL METHOD go_resstream->set_encoding
    EXPORTING
    encoding = go_encoding.
    XML Transformieren
    CALL TRANSFORMATION id_indent
    SOURCE itab = gt_knb1
    RESULT XML go_resstream.
    APPEND gd_result TO gt_xml.
    CALL METHOD cl_gui_frontend_services=>gui_download
    EXPORTING
    BIN_FILESIZE =
    filename = 'C:\temp\xml_to_utf8.txt'
    FILETYPE = 'ASC'
    APPEND = SPACE
    WRITE_FIELD_SEPARATOR = SPACE
    HEADER = '00'
    TRUNC_TRAILING_BLANKS = SPACE
    WRITE_LF = 'X'
    COL_SELECT = SPACE
    COL_SELECT_MASK = SPACE
    DAT_MODE = SPACE
    CONFIRM_OVERWRITE = SPACE
    NO_AUTH_CHECK = SPACE
    CODEPAGE = SPACE
    IGNORE_CERR = ABAP_TRUE
    REPLACEMENT = '#'
    WRITE_BOM = SPACE
    TRUNC_TRAILING_BLANKS_EOL = 'X'
    IMPORTING
    FILELENGTH =
    CHANGING
    data_tab = gt_xml
    EXCEPTIONS
    file_write_error = 1
    no_batch = 2
    gui_refuse_filetransfer = 3
    invalid_type = 4
    no_authority = 5
    unknown_error = 6
    header_not_allowed = 7
    separator_not_allowed = 8
    filesize_not_allowed = 9
    header_too_long = 10
    dp_error_create = 11
    dp_error_send = 12
    dp_error_write = 13
    unknown_dp_error = 14
    access_denied = 15
    dp_out_of_memory = 16
    disk_full = 17
    dp_timeout = 18
    file_not_found = 19
    dataprovider_exception = 20
    control_flush_error = 21
    not_supported_by_gui = 22
    error_no_gui = 23
    OTHERS = 24.
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    END-OF-SELECTION.
    However, I like to mention that the file created from out ECC 5.0 (6.40, non-Unicode) contains a special character between the XML header and the data part (when displayed using NotePad Editor):
    ...xml version="1.0" encoding="utf-8"?>[special character]<asx:abap xmlns:asx="http://www.sap.com/a...
    Using a HexEditor the special character (0x0A) is displayed as a dot.
    Also Check with FM - TREX_TEXT_TO_UTF8
    Regards,
    KK

  • Creating XML file with UTF-8 format

    Hi,
    I have written the below code to download an XML file. but ia m able to in UTF-16 format.how do i download in UTF-8 format.
    can somebody send i sample code for UTF-8 format.
    types: begin of x_mara,
           matnr type matnr,
           mtart type mtart,
           end of x_mara.
    TYPES: BEGIN OF ttab,
           record(50000) TYPE c,
           END OF ttab.
    data: t_mara type standard table of x_mara.
    DATA: xml_out TYPE string,
          xml_table type table of ttab.
    select matnr
           mtart
           from mara up to 10 rows
           into table t_mara.
    CALL TRANSFORMATION id
    SOURCE output = t_mara
    RESULT XML xml_out.
    append xml_out to xml_table.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
      BIN_FILESIZE                    =
        FILENAME                        = 'C:\Users\sirishac\Desktop\Siri.xml'
       FILETYPE                         = 'BIN'
      APPEND                          = ' '
      WRITE_FIELD_SEPARATOR           = ' '
      HEADER                          = 'BCWEB'
      TRUNC_TRAILING_BLANKS           = ' '
      WRITE_LF                        = 'X'
      COL_SELECT                      = ' '
      COL_SELECT_MASK                 = ' '
      DAT_MODE                        = ' '
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
      WK1_N_FORMAT                    = ' '
      WK1_N_SIZE                      = ' '
      WK1_T_FORMAT                    = ' '
      WK1_T_SIZE                      = ' '
      WRITE_LF_AFTER_LAST_LINE        = ABAP_TRUE
    IMPORTING
      FILELENGTH                      =
      TABLES
        DATA_TAB                        = xml_table
      FIELDNAMES                      =
    EXCEPTIONS
       FILE_WRITE_ERROR                = 1
       NO_BATCH                        = 2
       GUI_REFUSE_FILETRANSFER         = 3
       INVALID_TYPE                    = 4
       NO_AUTHORITY                    = 5
       UNKNOWN_ERROR                   = 6
       HEADER_NOT_ALLOWED              = 7
       SEPARATOR_NOT_ALLOWED           = 8
       FILESIZE_NOT_ALLOWED            = 9
       HEADER_TOO_LONG                 = 10
       DP_ERROR_CREATE                 = 11
       DP_ERROR_SEND                   = 12
       DP_ERROR_WRITE                  = 13
       UNKNOWN_DP_ERROR                = 14
       ACCESS_DENIED                   = 15
       DP_OUT_OF_MEMORY                = 16
       DISK_FULL                       = 17
       DP_TIMEOUT                      = 18
       FILE_NOT_FOUND                  = 19
       DATAPROVIDER_EXCEPTION          = 20
       CONTROL_FLUSH_ERROR             = 21
       OTHERS                          = 22
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Thanks in Advance,
    Neha

    hi
    good
    go through this link
    http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm
    thanks
    mrutyun^

  • Downloading file in UTF-8 format

    Hi,
    I want to download a file in UTF-* format.
    i have written the following code to download it in UTF-8.
    OPEN DATASET L_filename FOR OUTPUT IN TEXT MODE ENCODING UTF-8.
    LOOP AT p_struct INTO w_struct.
    TRANSFER w_struct TO l_filename.
    CLEAR w_struct.
    ENDLOOP.
    CLOSE DATASET l_filename.
    my question how do i check the file whether it is been downloaded in UTF-8 or not?
    Thanks in advance.
    neha

    Hi!
    You have to download it into your PC. For this, use an FTP program (f.e smartftp).
    Then use a text editor to check its format, for example PSPAD text editor.
    Regards
    Tamá

  • How to read only files with a certain format from folder with java

    I have this folder on the server and I only want to read files from this folder on the server... I only want to read files with the files format starting with error_ and ending with xml... an example of a file would be..
    error_123.xml
    I want something like this
    if(fileName.startsWith("error_") && fileName.endsWith(".xml")){
    but which java package will I have to use to read the file from the directory...

    Create an implementation of the java.io.FilenameFilter interface to match the pattern you need.
    Create a java.io.File object for the folder.
    Use the File.listFiles(FilenameFilter) method to get an array of File objects for the files in the folder that match the pattern.
    For each file in the array, create a FileInputStream, wrap it in an InputStreamReader, and wrap that in a BufferedReader (assuming you want to read the XML files as character streams).

  • How to read multiple files of a specified format from a selected folder?

    i want to read multiple files of specified format from a selected folder, even if the selected folder contains multiple sub-folders, is it possible, if so please provide me a sample.

    try this:
    foreach (string dirPath in Directory.GetDirectories(WriteYourPathHere, "*",SearchOption.AllDirectories))
    string[] files = System.IO.Directory.GetFiles(dirPath, "*.txt");
    //loop over files array and do what you want with .txt files picked up during the loop
    OR in one line also:
    foreach (string file in Directory.GetFiles(WriteYourPathHere,
    "*.txt", SearchOption.AllDirectories))
    Fouad Roumieh

  • Reading a file with UTF-8 contents

    Hi,
    I am not sure whether this is the right forum for my question. If not, please tell me.
    I have a problem reading a file where some characters are stored in UTF-8. An example string from the file is: "M\u00f6hrchen"
    But If I read this in, with a BufferedReader this becomes "M\\u00f6hrchen". Why is this so?
    The code is the following:
    BufferedReader reader= new BufferedReader(
                               new InputStreamReader(
                                   new FileInputStream(filename, "UTF-8"));          
    while (reader.ready()) {
         String line= reader.readLine();
    }Any hints what is going wrong? It must be something with the input stream, since writing the String directly into the code works.
    Marco

    First - "\u00f6" isn't UTF-8 encoding; it's a unicode
    escape sequence.
    UTF-8 encoding would mean that your character is
    actually stored as a single unicde character - not 6
    ascii characters.Oh, than I misunderstood this.
    Second, just do:
    BufferedReader reader= new BufferedReader(
    new InputStreamReader(
    new
    new
    new FileInputStream(filename));          
    while (reader.ready()) {    
    String line= reader.readLine();
    I tried this along with other encodings. Nothing worked correctly. The output of specifiying UTF-8 and nothing is the same. Java seems to not understand that this is a unicode escape sequence, but rather escapes the backslash.

  • Writing a file in UTF-8 Format using FileWriter

    Hi,
    I am trying to write some data to the file system using a filewriter object. I want the file to be stored in UTF-8 encoding. Please give me some pointers regarding the same.
    Best Regards,
    Pradeep

    First you have to declare that you will use UTF8 :
    OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(myFilePath,true),"UTF8");Then you can write in you file in UTF8.
    The problem is that when you open the file with an editor like Crimson or UltraEdit, it says that your file is encoded in ASCII ... even if your stream had well been saved in UTF8.
    To be sure that your file format is UTF8, you have to had at the beginning of your file 3 bytes : EF, BB and BF :
    byte[] x = new byte[3];
    x[0] = (byte) (Integer.parseInt("EF",16));
    x[1] = (byte) (Integer.parseInt("BB",16));
    x[2] = (byte) (Integer.parseInt("BF",16));
    osw.write(new String(x,"UTF8"));Here my "complete" code :
    String myFilePath = "........";
    String myText = "............";
    OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(myFilePath,true),"UTF8");
    System.err.println("osw encoding : "+osw.getEncoding()); //just to be sure of the encoding
    byte[] x = new byte[3];
    x[0] = (byte) (Integer.parseInt("EF",16));
    x[1] = (byte) (Integer.parseInt("BB",16));
    x[2] = (byte) (Integer.parseInt("BF",16));
    osw.write(new String(x,"UTF8"));
    osw.write(new String(myText));
    osw.close();I think you can use OutputStreamWriter instead of FileWriter as FileWriter inherits of OutputStreamWriter.

  • Saving files in utf-8 format

    When i save a file in my text-editor, I can choose to save it
    as an
    utf-8 file. The editor stilel shows the extended character as
    a
    character, but HomeSite does not.
    How can I change this? Is there any way to make HomeSite
    save HTML files in the utf-8 character set format?

    HomeSite has some issues with UTF-8. Here's a technote with
    some details and workarounds.
    TechNote: Unicode issues in HomeSite/HomeSite+ 5.5
    http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=tn_19059
    jeff

  • Problem in reading a file in the specified format

    Hi,
    I want to read a .txt file using the bufferedreader() but the text displayed in the console doesnot show data in new lines though there are multiple lines in the text file.It shows the content of the file in one line.
    ex: file.txt
    1. Here
    2. Is the code
    When I retrive the file it shows the following o/p in the console :
    O/P
    HereIs the code
    Expected o/p
    Here
    IS the code
    Please help me.
    Thanks in advance
    Regard Devi

    Your are not using parentheses {} with your while loop, and you really should.
    I believe that the problem is that the new line character is not being included.
    It's good to use the readLine() method, but you have to remember that it does
    not return the "end of line characters" so you would have to supply that yourself.
    Fortunately, System.out.println() will add a new line for you, but you would have
    to call it after each readLine() for it to look right.
    Also, I don't see why you are using both s1 and y. Here is an example using the
    variable "line" to hold the line of text being read.
    BufferedReader screenReader = new BufferedReader(new InputStreamReader(System.in));
    System.out.print("Enter the File name: ");
    String str = screenReader.readLine();
    BufferedReader br = new BufferedReader(new FileReader(str));
    String line = "";
    while ((line = br.readLine()) != null) {
         System.out.println(line);
    }Hope it helps.

  • IDoc to File - Russian Characters not in UTF-8 format - File Receiver

    Hello,
    My scenario is Idoc to File. My SAP sender system is a Unicode system and my RFC connection to XI is also set to a unicode connection. My idoc is sent to XI OK and whenever I look at the payload in SXMB_MONI, I see the Russian characters OK, but the problem is when the file gets created.
    My receiver system wants the file in UTF-8 format.  When the file gets created, the Russian characters are not in UTF-8 encoding format. For example, the Russian chars look like (but without the spaces inbetween): Ð # Ð µ Ñ # Ð ¶ Ð ° Ñ # Ð µ Ð » Ñ ...
    Instead, the chars should look like: Держатель
    My file type in my file receiver comm channel is binary and I am also using the AF_Modules/XMLAnonymizerBean with anonymizer.encoding of utf-8.
    Can someone please help me determine the problem?
    Thank you,
    Rhonda

    Hi Rhonda,
    Hope you have set the following for your file receiver adapter :
    1. Transfer Mode is set to Binary,
    2. File Type Text,
    3. Encoding ISO-8859-1( for Western European Latin ).
    Inorder to recognize russian Character, try as follows :
    Your sender idoc after coming into Pi has XML encoding declaration 'UTF-8'.
    Write a simple XSLT mapping to change the value of the attribute "encoding" to "ISO-8859-1" in the output XML of message mapping . Include this XSLT map as the second mapping step in your interface mapping.
    First step in your interface mapping will be your already existing message mapping.
    An example of the XSL code :
    <?xml version='1.0'?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method='xml' encoding='ISO-8859-1' />
    <xsl:template match="/">
    <xsl:copy-of select="*" />
    </xsl:template>
    </xsl:stylesheet>
    Iam not sure whether Russian language encoding has ISO-8859-2 (Eastern European Latin) or
    ISO-8859-1( for Western European Latin )...pls check out !
    or you can also do java mapping instead of above mentioned xslt mapping  if you are comfortable with java code !
    Cheers,
    Ram.

Maybe you are looking for