教えてください。
Nokogiriというgemを使ってXMLを処理しています。
Nokogiriへの入力はUTF8なのですが、
XML処理後の出力が16進文字列に変わってしまうのです。
環境はLinux
(Linuxについてはあまり詳しくないので
情報が不十分かもしれません。すいません。)
16進文字列をUTF8に戻すこともできるのですが、
できれば、無駄な手間はかけたくありません。
もし、原因に心当たりがありましたら、
教えていただけると助かります。
Encoding.default_internal、
Encoding.default_externalなども怪しいと思います。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
コードにおかしい点はありません。
本当に16進文字列になっていますか?pとかinspectで16進表示されているだけと言うことはないですか?
16進文字列になっているというのはどうやって判断しましたか?具体的に書いてください。
念のため、「具体的に」というのは他人がその文章を読んで全く同じ手順を実行できるという意味です。
回答ありがとうございます。
結論から言うと、
問題は再現しなくなっていました。
PCを再起動すると治る問題だったのでしょうか・・・
お手数をおかけして
申し訳ありませんでした。
でも、半年Rubyを使ってみましたが、
ときどき、予想外に
UTF8文字列が16進文字列に置き換わる現象が
起きる気がします。
No.1
- 回答日時:
本当に16進文字列に変わっているのなら、エンコードは関係ありません。
とりあえずコードを書いてください。あとRubyのバージョンも。
Encode.default_internalと書いているということは、1.9.1ですか?
回答ありがとうございます。
お察しの通り、Rubyのバージョンは1.9.1です。
ソースはこんな感じです。
# -*- coding: utf-8 -*-~
doc = Nokogiri::XML::Document.new(xml_str_input)
xml_str_output = doc.to_xml()
xml_str_inputはUTF8の文字列です。
xml_str_outputをファイル出力やputsしてみると、
16進文字列が入っています。
xml_str_outputのlengthと
ファイルの文字数は一致するので、
ファイル出力時点で
16進文字列になっているのではないようです。
分かりましたら、
教えていただけますと、助かります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 全角文字「ヴ」の半角文字「ヴ」への変換方法について 3 2022/11/05 12:07
- その他(プログラミング・Web制作) awkの文字列比較はPOSIXロケールまたはCロケールにおいてバイナリ値の比較に使えるか gawkな 1 2023/04/22 09:21
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- オープンソース 【ChatGTPのオープンソースソフトウェアを解析したことがある方、教えてくださ 2 2023/03/08 18:57
- Excel(エクセル) Excelの空文字判定について 7 2023/01/06 13:25
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Excel(エクセル) Excelの文字列を数字に変換する方法について 6 2023/07/31 21:18
- Java Java 南京錠 2 2023/02/04 11:46
- WordPress(ワードプレス) Wordpressの記事URLを自由に決めたい 3 2022/06/02 12:05
- Visual Basic(VBA) 以下のVBAで該当文字列の前後に付与したい。 例 前に付与 abc ユーザーID 12345 後に付 3 2022/04/19 21:50
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】看板の文字を埋めてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・【穴埋めお題】恐竜の新説
- ・我がまちの「給食」自慢を聞かせてっ!
- ・冬の健康法を教えて!
- ・一番好きな「クリスマスソング」は?
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シート上にドロップダウン...
-
HTML5では文中の半角不等号はち...
-
Accessで文字列のバイト数読み込み
-
VisualStudio2022でC言語プログ...
-
C言語 exitの使い方
-
VBAでダブルコーテーション入り...
-
フォームを開くときに、コンボ...
-
VB6.0-整数と余りを求める
-
コンボボックスの名前を変数に...
-
VBAの定数の使い方で、計算値を...
-
VBAで配列のNULL判定
-
jsp~jspにhiddenを使って変数...
-
EXCEL/VBA 変数の値をクリップ...
-
関数で複数の値を戻り値として...
-
配列の値を置換するにはどうす...
-
エラーの意味は? Lvalue req...
-
[VBS]変数を定数に変換する方法...
-
インクリメント演算子の前置(+...
-
excelの、ある数式内の{}の意...
-
○桁にある数値を取得する VB.N...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VisualStudio2022でC言語プログ...
-
Accessで文字列のバイト数読み込み
-
C言語で全角文字を扱いたいので...
-
Cpadで文字化け
-
tomcat7 web.xml のエンコード
-
アンダーバーとバックスラッシュ
-
C言語 exitの使い方
-
VBAでダブルコーテーション入り...
-
エラーの意味は? Lvalue req...
-
フォームを開くときに、コンボ...
-
Excel-vba 文字列と変数を...
-
jsp~jspにhiddenを使って変数...
-
EXCEL/VBA 変数の値をクリップ...
-
配列の値を置換するにはどうす...
-
processing エラーで、 "cannot...
-
vbsでテキストファイル内の文字...
-
VB6.0-整数と余りを求める
-
excelの、ある数式内の{}の意...
-
テキストボックスの値を変数に...
-
数字の位ごとの値を表示するプ...
おすすめ情報