0

C# で XML ドキュメントを作成しています。

私はこのようなものを持っています...

string output = "REAPP DUE  NO OF  M CASE NBR   APPL NBR      DATE  GRPS   M CASE NBR   APPL NBR      DATE  GRPS   _                                       _                                       _";

そして私はこれをします...

        objXmlTextWriter.WriteStartElement("Case");
        objXmlTextWriter.WriteString(record);
        objXmlTextWriter.WriteEndElement();  

xml要素は次のようになります...

<Case>REAPP DUE NO OF REAPP DUE NO OF M CASE NBR APPL NBR DATE GRPS M CASE NBR APPL NBR DATE GRPS _ _ _ </Case>

基本的に、長さが1文字を超える空白を1文字の空白に変換しました。

これを防ぐにはどうすればよいですか?

4

3 に答える 3

0

IE での表示が重要な場合は、WriteString() の代わりに WriteCData() を使用してテキストを CDATA ブロックで囲むことができます。

于 2008-10-16T08:31:41.303 に答える
0

すみません、前に混乱しました(間違った答えを削除しました)。しかし、あなたが見ているように見えるものを再現することはできません。このプログラムをチェックしてください...スペースを保持します。

class Program
{
    static void Main(string[] args)
    {

        XmlWriter w = XmlTextWriter.Create("./foo.xml");
        w.WriteStartElement("foo");
        w.WriteString(" THIS   HAS VARYING     SPACeS ");
        w.WriteEndElement();
        w.Close();

        StreamReader sr = new StreamReader("./foo.xml");
        Console.WriteLine(sr.ReadToEnd());
        Console.ReadKey();
    }
}
于 2008-10-15T16:11:36.693 に答える
0

わかった...

これは IE の表示の問題です。私が推測するフォントと関係があります。

メモ帳++でXMLを開くと、空白が実際に適切に保持されていることがわかります。

于 2008-10-15T16:13:13.710 に答える