P.P.S.: Re: Issues with code page conversion..grateful for any help

Daniel Gross <[email protected]> Tue, 31 Mar 2026 15:08:28 +0200
Newsgroups gmane.comp.lang.as400.rpg
Message-ID <[email protected]>
P.P.S.:

What do you expect the UTF-8 value to be? You know, that CCSIDs 870 and 273 are EBCDIC CCSIDs - and UTF-8 is Unicode - and it's loosely based on ASCII.

So if you look at a UTF-8 file in raw format from IBM i side, it should look like "garbage" - But if you read it again (like with IFS_READ) you should see the correct values.

Also - have you checked the CCSID of the IFS file? If the file already exists, the IFS_WRITE_UTF8 doesn't change it, but it write out UTF-8. If you read the file again, the CCSID has to be UTF-8, because it can only find out should coding to use, if the files CCSID is correctly set.

These are just some thoughts.

HTH
Daniel


> Am 31.03.2026 um 14:49 schrieb Daniel Gross <[email protected]>:
> 
> Hi Sean,
> 
> is the original data in the correct CCSID?
> 
> I would give it a try
> 
>   dcl-s origVal varchar(100) ccsid(870) inz('Zakład');
>   dcl-s utf8Val varchar(100) ccsid(*utf8) inz;
> 
>   utf8Val = origVal;
>   origVal = utf8Val;
> 
> And debug this step by step. What is in those 2 strings? Are the values correct?
> 
> In the next step, try to write origVal to a test-file with IFS_WRITE_UTF8 - and compare.
> 
> If the CCSIDs are correct, you shouldn't have problems with UTF8 and other CCSIDs.
> 
> HTH
> Daniel
> 
> P.S.: can you post the hex values of the original value (in CCSID 870) and the UTF8 value please?
> 
> 
>> Am 31.03.2026 um 14:34 schrieb [email protected]:
>> 
>> Hi Daniel,
>> 
>> Firstly, thank you for your reply ...
>> 
>> That is what I thought as well but it does not seem to be so simple...
>> 
>> If I look at the data with ccsid 273 I get this "Zakªad"  and with ccsid 870 I get 'Zakład'
>> 
>> If I write the data to UFT-8 File with ccsid 1208 I get the wrong output.
>> 
>> How do I get the correct value to my output file...  Ideas appreciated.
>> 
>> 
>> Mit freundlichen Grüßen / Kind regards / Bien à vous,
>> 
>> Seán
>> 
>> 
>> 
>> 
>> -----Original Message-----
>> From: RPG400-L <[email protected]> On Behalf Of Daniel Gross
>> Sent: Monday, 30 March 2026 19:46
>> To: [email protected]
>> Subject: Re: Issues with code page conversion..grateful for any help
>> 
>> Hi Sean,
>> 
>> with UTF-8 there is no such thing as a codepage anymore - because UTF-8 is short for "Unicode Transfer Format 8 Bit" - so this is full Unicode.
>> 
>> If you want your file to be written with a specific CCSID, you have to use QSYS2.IFS_WRITE with the FILE_CCSID parameter.
>> 
>> You can also use this function for UTF-8 - that would be FILE_CCSID=>1208 then - as CCSID 1208 would be UTF-8.
>> 
>> HTH
>> Daniel
>> 
>> 
>>>> Am 30.03.2026 um 19:01 schrieb [email protected]:
>>> 
>>> Hello all,
>>> 
>>> 
>>> 
>>> I am using “QSYS2.IFS_WRITE_UTF8” to generate a UTF8 Output file.
>>> 
>>> 
>>> 
>>> So far so good … I have data with Polish special characters that must
>>> be sent with correct CCSID (870)
>>> 
>>> 
>>> 
>>> I use
>>> 
>>> 
>>> 
>>> EXEC SQL     SET :chr870  = CAST(:myData AS CHAR(100) CCSID 870) to convert my data to CCSID 870 but when I write
>>> 
>>> To my output file the special characters are not written correctly.
>>> 
>>> 
>>> 
>>> Any ides on how to write these special characters to UTF8 without
>>> losing the code page …
>>> 
>>> I have tried a few things but no success yet…  I am hoping the CCSID guru’s out there have a few ideas for me.
>>> 
>>> 
>>> 
>>> 
>>> 
>>> Mit freundlichen Grüßen / Kind regards / Bien à vous,
>>> 
>>> 
>>> 
>>> Sean
>>> 
>>> 
>>> 
>>> --
>>> This is the RPG programming on IBM i (RPG400-L) mailing list To post a
>>> message email: [email protected] To subscribe, unsubscribe,
>>> or change list options,
>>> visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
>>> or email: [email protected]
>>> Before posting, please take a moment to review the archives at
>>> https://archive.midrange.com/rpg400-l.
>>> 
>>> Please contact [email protected] for any subscription related questions.
>>> 
>> --
>> This is the RPG programming on IBM i (RPG400-L) mailing list To post a message email: [email protected] To subscribe, unsubscribe, or change list options,
>> visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
>> or email: [email protected]
>> Before posting, please take a moment to review the archives at https://archive.midrange.com/rpg400-l.
>> 
>> Please contact [email protected] for any subscription related questions.
>> 
>> 
>> --
>> This is the RPG programming on IBM i (RPG400-L) mailing list
>> To post a message email: [email protected]
>> To subscribe, unsubscribe, or change list options,
>> visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
>> or email: [email protected]
>> Before posting, please take a moment to review the archives
>> at https://archive.midrange.com/rpg400-l.
>> 
>> Please contact [email protected] for any subscription related questions.
>> 
> --
> This is the RPG programming on IBM i (RPG400-L) mailing list
> To post a message email: [email protected]
> To subscribe, unsubscribe, or change list options,
> visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
> or email: [email protected]
> Before posting, please take a moment to review the archives
> at https://archive.midrange.com/rpg400-l.
> 
> Please contact [email protected] for any subscription related questions.
> 
-- 
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: [email protected]
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: [email protected]
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact [email protected] for any subscription related questions.