Use one of the IFS readers or input streams from the JT400 or JTOpen
toolkit. They'll recognize the CCSID. Java strings are unicode. The read
or readLine method will translate from the file's CCSID into unicode
under the covers.
You may want to use an XMLReader. By definition, the header of XML is in
USASCII (8859?) and the header specifies the encoding of the rest of the
file. All that may depend on how the XML was created.
-----Original Message-----
From: java400-l-bounces@xxxxxxxxxxxx
[mailto:java400-l-bounces@xxxxxxxxxxxx] On Behalf Of Wintermute, Sharon
Sent: Thursday, June 04, 2009 9:17 AM
To: java400-l@xxxxxxxxxxxx
Subject: Java reading a stmf file problem.
I have an XML file in the IFS that I am trying to read with Java (on the
AS/400) in order to send the data within it as a message to someone.
Quite simply,
private String readFile(String fileName) {
String messageText = "";
BufferedReader bufferedReader = null;
try {
String tempText = null;
bufferedReader = new BufferedReader(new
FileReader(fileName));
while ((tempText = bufferedReader.readLine()) != null)
{
messageText += tempText;
System.out.println(tempText);
}
}
catch (IOException e) {
errorMessage = "12: " + e.getMessage();
} finally {
if (bufferedReader != null) {
try {
bufferedReader.close();
} catch (IOException e) {
errorMessage = "13: " + e.getMessage();
}
}
}
return messageText;
}
My problem is the string it is creating is gobbledegook. The Ifs file is
CCSID 37,
Do I need to translate it from ebcdic to ascii?
Sharon Wintermute
--
This is the Java Programming on and around the iSeries / AS400
(JAVA400-L) mailing list To post a message email: JAVA400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/java400-l
or email: JAVA400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at
http://archive.midrange.com/java400-l.
As an Amazon Associate we earn from qualifying purchases.