1
我們的網絡應用程序使用定製的IronPython腳本(IronPython版本爲2.7.3)爲什麼字符串對象的IronPython str()會引發UnicodeEncodeError?
腳本中的某個對象在一個點處轉換爲字符串。這絕對是一個字符串。它由我們的應用程序提供,其價值來自外部系統。 該引發異常的行是:
return str(customField.Value)
其中customField.Value
是我已描述對象(customField.Value
是對象類型)。
該對象是一個字符串,因爲customField
是文本類型(來自我們的應用程序的一種類型),我可以取出其值,它看起來像一個標準英文字符串,並且沒有超出ASCII範圍的字符。
異常記錄(後由我們的記錄處理)爲:
Error on uploading case data: ('unknown', '\x00', 0, 1, '')
['Equals', 'GetHashCode', 'GetType', 'InitializeFromClr', 'Item', 'MemberwiseClone',
'ReferenceEquals', 'ToString', '__class__', '__delattr__', '__dict__', '__doc__',
'__format__', '__getattribute__', '__getitem__', '__getslice__', '__hash__', '__init__',
'__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setstate__',
'__sizeof__', '__str__', '__subclasshook__', '__unicode__', 'args', 'clsException',
'encoding', 'end', 'message', 'object', 'reason', 'start']
message: --- ---
args: --- ('unknown', '\x00', 0, 1, '') ---
CLR Exception: --- System.Text.EncoderFallbackException ---
Error located in on line 531 in function
Error located in on line 410 in function packData...
這究竟是爲什麼? 我該如何解決這個異常,以及修改腳本的正確方法是什麼?
任何一個https://en.wikipedia.org/wiki/Null_character的機會呢? (這是當我搜索「\ x00」時出現的) – NightShadeQueen
我該如何解決這個問題?我不知道爲什麼它會爲許多值工作,但只有少數人失敗,所有都來自手動輸入?你有什麼建議如何解決這個問題? –
該源實際上是手動導入,然後該字符串通過c#代碼獲取,並且也獲取到IronPython –