Help us understand the problem. What is going on with this article?

初心者がハマったXMLファイル記述の罠?

はじめに

XMLから値(拡張子)を取得してC#で画像保存

という処理を行うコードのバグ修正に時間がかかってしまいました。
別に罠というほど大層なものではありません、悪しからず。

XMLの中身

修正前.xml
<!-- 画像の拡張子 -->
<image>
  <information>
    <extension> png </extension> <!-- png or jpg or gif -->
  </information>
(一部略)
</image>
修正後.xml
<!-- 画像の拡張子 -->
<image>
  <information>
    <extension>png</extension> <!-- png or jpg or gif -->
  </information>
(一部略)
</image>

分かりにくいですが修正前は「png」の前後にスペースを挿入しています。
結論このスペースのせいで画像保存がうまくいかなかったのですが、
コードを書いている最中の脳内は

「うーん、文字がギッシリ詰まってて見にくいな・・・」
「属性値の前後にスペース入れたら見やすいかも・・・?」

といった感じでした。

解決へ

ログ出力します。

修正前.xml
 abc. png
修正後.xml
 abc.png

一目瞭然・・・ではないですが、よく見ると修正前はpngの前にスペースがありますね。
このスペースが原因で画像保存ができなかったようです。

まとめ

Markdownでログ出力を確認すると無駄なスペースが挿入されているのが明らかなんですが、IDEのログ画面では全然分かりませんでした。
それはともかく、もっと問題個所の切り分けを素早くできれば今回のバグはすぐに気付けたと思います。
今後に活かしたいです。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away