技術(shù) 點
- 技術(shù)
- 點
- V幣
- 點
- 積分
- 12861

|
本帖最后由 t小寶 于 2010-12-24 09:20 編輯
各位看到標題不要想到中日之間的什么事哦,其實只是,日文片假名字符在ACCESS中一出現(xiàn),就會惹來不少麻煩,
諸如表的記錄含有日文片假名字符時,查詢記錄會導致內(nèi)存溢出,處理字符串的函數(shù)遇到日文片假名字符會出錯等,
具體可用ACCESS和日文為關(guān)鍵字百度一下。
其實這也不能怪日本,怪就怪微軟,真不知微軟是什么心態(tài),搞這么一個BUG,影響中日關(guān)系 。。。
那么,在ACCESS中就要堅決清除日文片假名字符,不能讓它與ACCESS共存,
但用Replace、InStr來處理都出錯,所以只能用暴力一個字一個字來解決了。
在http://m.mzhfr.cn/thread-95783-1-1.html此帖中fyupeng 版友遇到了此問題,并找到了解決方法,
本人也寫了個函數(shù),誰有更好的辦法快來指正。。。
'清除日文片假名字符函數(shù)
Function ClearKatakana(Expression As String) As String
Dim i As Long
Dim lngStart As Long
Dim lngLength As Long
lngStart = 1
For i = 1 To Len(Expression)
Select Case Mid(Expression, i, 1)
Case "ゴ", "ガ", "ギ", "ア", "ゲ", "ザ", "ジ", "ズ", "ヅ", "デ", "ド", "ポ", "ベ", "プ", "ビ", "パ", "ヴ", "ボ", "ペ", "ブ", "ピ", "バ", "ヂ", "ダ", "ゾ", "ゼ"
lngLength = i - lngStart
If lngLength > 0 Then ClearKatakana = ClearKatakana & Mid(Expression, lngStart, lngLength)
lngStart = i + 1
End Select
Next
ClearKatakana = ClearKatakana & Mid(Expression, lngStart)
End Function
|
|