過濾xml的無效字元
❶ C#從資料庫中提取數據生成XML文件,系統報錯,提示"♀(十六進制值0x0c)是無效的字元"
產生原因是xml文件中包含低位非列印字元造成的
處理方法:在產生xml文件的時候,過濾低位非列印字元
public static string (string tmp)
{
StringBuilder info = new StringBuilder();
foreach (char cc in tmp)
{
int ss = (int)cc;
if (((ss >= 0) && (ss <= 8)) || ((ss >= 11) && (ss <= 12)) || ((ss >= 14) && (ss <= 32)))
info.AppendFormat(" ", ss);//{0:X};
else info.Append(cc);
}
return info.ToString();
}
❷ 編程校驗XML文檔,錯誤提示:內容模式中包含無效字元 請指點
你的DTD文件寫錯了。
(書名,作者,售價 )
這中間的逗號是中文字元,要改成英文的逗號。
❸ 帶有無效字元的java xml如何刪除
不確定有無,但你可以方便的自己寫一個這樣的方法
首先把字元轉換成int類型,這個int就表示那個字元的unicode值
然後把這個int轉成String類型
最後在這個String的前面加上就可以了
❹ xml文本發現無效字元
我也遇到這樣的情況了!唉!
❺ php 如何過濾掉xml中的特殊字元
|
functionxmlentities($string,$quote_style=ENT_QUOTES)
{
static$trans;
//
//
$string=html_entity_decode($string,ENT_QUOTES);
//xmlencoding
if(!($trans))
{
$trans=get_html_translation_table(HTML_ENTITIES,$quote_style);
foreach(array_keys($trans)as$key)
{
$trans[$key]='&#'.ord($key).';';
}
//donttranslatethe'&'incaseitispartof&xxx;
$trans[chr(38)]='&';
}
//aftertheinitialtranslation,_do_mapstandalone'&'into'&'
$str_temp=preg_replace("/&(?![A-Za-z]{0,4}w{2,3};|#[0-9]{2,3};)/u"
,"&"
,strtr($string,$trans)
);
return$str_temp;
}
❻ xml解析中遇到這種無效字元怎麼辦
關鍵是為何會出現這些字元??
❼ 解析XML數據錯誤,文本內容中發現無效字元
你安裝一個上海大客戶版 WIN XP SP2的正版系統試一下,你原來的系統可能是GHOST的系統
❽ 無法顯示 XML 頁 名稱以無效字元開頭
關鍵的代碼你都沒給,哪裡引用的XML文件,XSLT樣式表怎麼寫的,網頁代碼是什麼,沒這些東西誰也沒法猜出來怎麼解決。
另外你給的鏈接是本地地址,別人是打不開的
❾ XML 文本內容中發現無效字元
你的DTD文件忘了聲明了~~ 這樣就好了
//------------------student.dtd------------------
<?xml version="1.0" encoding="utf-8"?>
<!ELEMENT 學生信息 (學生)*>
<!ELEMENT 學生 (姓名,年齡,選課版+,學校,((區號?,電話號碼權)|手機號碼))>
<!ATTLIST 學生 編號 ID #REQUIRED>
<!ATTLIST 學生 身份 CDATA #FIXED "學生">
<!ELEMENT 姓名 (#PCDATA)>
<!ATTLIST 姓名 性別 (男|女) #IMPLIED>
<!ELEMENT 年齡 (#PCDATA)>
<!ELEMENT 選課 (#PCDATA)>
<!ELEMENT 學校 (#PCDATA)>
<!ENTITY school "北京大學">
<!ELEMENT 區號 (#PCDATA)>
<!ELEMENT 電話號碼 (#PCDATA)>
<!ELEMENT 手機號碼 (#PCDATA)>
❿ 解析XML時有無效字元怎麼處理
定義一變數為 「null」(字元串) , 然後給它賦值為 "null"字元串
如果是int 或者double的話就給-9999
如果是bool 就給全給 false