LabVIEWで構成ファイル内の日本語文字読み取り時に値が正しくない

更新しました Apr 18, 2024

使用製品

プログラミング言語

  • LabVIEW G

問題

設定ファイル(.ini)のセクション名の一つに日本語を使用しています。 Get Section Names.viを使用してセクション名を取得した場合、出力された値が正しくありません。 LabVIEWを使用して構成ファイル内の正しいセクション名を読み取るにはどうすればよいですか?

例えば設定ファイルは以下のように設定されています。「回転数」はセクション名、「鍵」はキー、「test no 1」はキーの値です。
[回転数]
鍵 = "test no 1"
Get Section Names.viで返されるセクション名は以下に示すように「回・」となります。
戻り値.png


 

解決策

これは、特定の日本語単語がシフト JIS でエンコードされることが原因で起こる予期された動作です。
単語「転」は2バイトで16進数935dとしてコード化され、2番目のバイトの16進数5dは右角括弧「]」記号でも使用され、LabVIEWがセクション名の右角括弧として読み取ってしまいます。

これに対する解決策はないため、構成ファイルでそのような文字が使用されていないことを確認する必要があります。

追加情報

以下は2 番目のバイトに通常正規表現またはメタ文字として使用される符号がある文字のリストです。
2 バイト目の 16 進値シンボルキャラクター
0x40@ァ А 院 魁 機 掘 后 察 宗 拭 繊 叩 邸 如 鼻 法 諭 蓮 僉 咫 奸 廖 戞 曄 檗 漾 瓠 磧 紂 隋 蕁 襦 蹇 錙 顱 鵝 硃 菑
0x5b      [    ー ゼ Ъ 閏 骸 擬 啓 梗 纂 充 深 措 端 甜 納 票 房 夕 麓 兌 喙 媼 彈 拏 杣 歇 濕 畆 禺 綣 膽 藜 觴 躰 鐚 饉 鷦 神 蕺   
0x5c \  ― ソ Ы 噂 浬 欺 圭 構 蚕 十 申 曾 箪 貼 能 表 暴 予 禄 兔 喀 媾 彌 拿 杤 歃 濬 畚 秉 綵 臀 藹 觸 軆 鐔 饅 鷭 祥 薌 
0x5d   ‐ ゾ Ь 云 馨 犠 珪 江 讃 従 疹 曽 綻 転 脳 評 望 余 肋 兢 咯 嫋 彎 拆 枉 歉 濔 畩 秕 緇 臂 蘊 訃 躱 鐓 饐 鷯 祹 薏 
0x5e ^ / タ Э 運 蛙 疑 型 洪 賛 戎 真 楚 耽 顛 膿 豹 某 与 録 竸 喊 嫂 弯 擔 杰 歐 濘 畤 秧 綽 膺 蘓 訖 躾 鐃 饋 鷽 禍 薢 
0x5f _ \ ダ Ю 雲 垣 祇 契 浩 酸 柔 神 狙 胆 点 農 廟 棒 誉 論 兩 喟 媽 彑 拈 枩 歙 濱 畧 秬 綫 臉 蘋 訐 軅 鐇 饑 鸚 禎 薰 
0x60 ` A チ Я 荏 柿 義 形 港 餐 汁 秦 疏 蛋 伝 覗 描 冒 輿 倭 兪 啻 嫣 彖 拜 杼 歔 濮 畫 秡 總 臍 藾 訌 軈 鐐 饒 鸛
 
0x7b { + ボ к 閲 顎 宮 鶏 砿 施 旬 須 捜 畜 怒 倍 府 本 養 几 嘴 學 悳 掉 桀 毬 炮 痣 窖 縵 艝 蛔 諚 轆 閔 驅 黠 笻 螈 
0x7c | ポ л 榎 掛 弓 芸 鋼 旨 楯 酢 掃 竹 倒 培 怖 翻 慾 處 嘶 斈 忿 掟 桍 毫 烟 痞 窩 縹 艚 蛞 諫 轎 閖 驂 黥 筇 螬 
0x7d } マ м 厭 笠 急 迎 閤 枝 殉 図 挿 筑 党 媒 扶 凡 抑 凩 嘲 孺 怡 掵 栲 毳 烋 痾 竈 繃 艟 蛩 諳 轗 閘 驀 黨 筎 螭
 
0x7e  × ミ н 円 樫 救 鯨 降 止 淳 厨 掻 蓄 冬 梅 敷 盆 欲 凭 嘸 宀 恠 捫 桎 毯 烝 痿 窰 縷 艤 蛬 諧 轜 閙 驃 黯 螵