David,
Use a java.io.InputStreamReader over the IFSFileInputStream, specifying
the US EBCDIC charset. In fact, the charset identifier is probably in
the IFSFileInputStream file information.
Dan
-----Original Message-----
From: java400-l-bounces@xxxxxxxxxxxx
[mailto:java400-l-bounces@xxxxxxxxxxxx] On Behalf Of David Gibbs
Sent: Monday, May 04, 2009 11:12 AM
To: Java Programming on and around the iSeries / AS400
Subject: Brain cramp: reading an IFS file from program running on PC
Folks:
I'm having a brain cramp ... what's wrong with this code?
I'm trying to load a properties file from the IFS to determine what, if
any, default java version a user has. The code is running on a PC.
----------
User user = new User(as400, as400.getUserId());
user.loadUserInformation();
String homedir = user.getHomeDirectory();
String propertiesFile = homedir + IFSFile.separatorChar +
"SystemDefault.properties";
IFSFile file = new IFSFile(as400, propertiesFile); int ccsid =
file.getCCSID();
Properties defaults = new Properties();
IFSFileInputStream is = new IFSFileInputStream(file);
defaults.load(is);
is.close();
String javaVersion = defaults.getProperty("java.version");
----------
The bytes I'm getting in the properties are correct ... but they are the
ebcdic values, not unicode.
The IFS file has a CCSID of 37.
Thanks!
david
--
IBM i on Power - For when you can't afford to be out of business
--
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.