الحفاظ على المساحة البيضاء في سلسلة مع XmlTextWriter.WriteString
-
03-07-2019 - |
سؤال
وأنا أكتب وثيقة XML في C #.
ولدي شيء من هذا القبيل ...
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 طبيعة المساحة البيضاء.
وكيف يمكنني منع هذا؟
المحلول
عذرا، حصل الخلط من قبل (حذف إجابة خاطئة). ولكن لا أستطيع أن إنتاج ما يبدو لك أن تكون رؤية. تحقق هذا البرنامج ... يستبقي مسافات.
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();
}
}
نصائح أخرى
وOK ...
وهذه ليست سوى مشكلة عرض IE. أن تفعل شيئا مع الخط أعتقد.
وعندما فتح XML في المفكرة ++ أرى هو الحفاظ على المساحة البيضاء في الواقع بشكل صحيح.
وبدلا من WriteString () هل يمكن استخدام WriteCData () لإحاطة النص في كتلة CDATA إذا كان العرض في IE هو المهم.
لا تنتمي إلى StackOverflow