[ 新規に投稿する ]

INIファイルに制御コード入り文字列No.11116
K'zawa さん 23/02/07 21:22 [ コメントを投稿する ]
  こんにちは、K'zawaです。

マクロで、INIファイルに"\x01"から始まる文字列(予約されたレイヤー名など)を書き込み、getinistr関数で取得すると、"\x01"が消えてしまいます。
これは、INIファイルに制御コードはNGということでしょうか?


$ini = currentmacrodirectory + @"\Test.ini";
$s = "\x01ABC";
writeinistr $ini, "A", "B", $s;
$s2 = getinistr( $ini, "A", "B" );
newfile;
insert sprintf( "%s\n%s\n", $s, $s2 );
[ ]
RE:11116 INIファイルに制御コード入り文字列No.11117
秀丸担当 さん 23/02/08 09:07 [ コメントを投稿する ]
  ご指摘ありがとうございます。
試してみたところ、確かにそうなるようでした。
WindowsのAPIの時点でそうなるようで、Windowsとしてそういう仕様になっていると思われます。
encodeuri/decodeuriとかで変換して出し入れすると、いろいろ気にせずできるようになると思います。
[ ]
RE:11117 INIファイルに制御コード入り文字列No.11118
K'zawa さん 23/02/08 09:43 [ コメントを投稿する ]
  秀丸担当さん、こんにちは。
K'zawaです。

>WindowsのAPIの時点でそうなるようで、Windowsとしてそういう仕様になっていると思われます。
>encodeuri/decodeuriとかで変換して出し入れすると、いろいろ気にせずできるようになると思います。

わかりました。
ありがとうございます。
[ ]

[ 新規に投稿する ]