2015-04-06 73 views
0

我正在處理從CSV文件導入數據的應用程序。我被告知CSV文件中的數據來自我完全不熟悉的SAP。這個字符序列的可能含義是什麼? A&#C

我的客戶指出存在問題。 CSV文件中的一列數據包含郵政地址。有時候,系統沒有看到有效的地址。這裏有一個稍微虛構的例子:

1234 MAIN ST A&#C HOUSTON 

正如你可以看到,有一個門牌號,街道名稱和城市,都在大寫字母。沒有指定州或郵政編碼。在CSV文件中,假定所有地址處於相同狀態。

通常情況下,街道名稱和城市之間存在文本時,它是公寓號碼或信件。在上面的示例中,我們在嘗試將地址與其他服務(例如Google地理位置)一起使用時遇到錯誤。一個建議的解決方法是簡單地去除特殊字符,但我相信必須有更好的方法。

我想知道這個A&#C是什麼意思。它看起來像某種轉義序列,但它不是我熟悉的格式。請告訴我這些奇怪的字符序列是什麼意思。

回答

1

我不完全確定,但我懷疑有一個看起來像這樣的「規範」轉義序列。在ABAP環境中,#用於替換不可打印的字符。可能是數據在首先導入SAP系統時未正確清理,並且在寫入輸出文件時,某些不可打印的字符被替換爲#。另一種解釋可能是其中一個字段包含非ASCII的Unicode字符(如  ),導出程序無法將其轉換爲所選目標代碼頁。不檢查實際的源數據集很難說。當然,這也可能是一些編程錯誤或一個奇怪的自定義字段分隔符...

+0

在閱讀您的問題後,我決定檢查'#'和'&'是否出現在有效數據中,當然,它們分別表示爲「數字」和「和」的縮寫。我認爲也許我被一個用戶的簡單拼寫錯誤所困惑。 –