2009年9月28日 星期一

全形/半形 互換

  1. '半形轉全形
  2. Public Function ToWchr(ByRef data As String) As String
  3. Dim sb As New StringBuilder
  4. Dim ascii As Integer = 0

  5. For Each c As Char In data.ToCharArray()
  6. ascii = Convert.ToInt32(c)
  7. If ascii = 32 Then
  8. sb.Append(Convert.ToChar(12288))
  9. Else
  10. sb.Append(Convert.ToChar(ascii + IIf(ascii <>
  11. End If
  12. Next

  13. Return sb.ToString
  14. End Function

  15. ' 全形 轉 半形
  16. Public Function ToNchr(ByRef data As String) As String
  17. Dim sb As New StringBuilder
  18. Dim ascii As Integer = 0

  19. For Each c As Char In data.Replace("〔", "[").Replace("〕", "]").Replace("'", "'").ToCharArray()
  20. ascii = Convert.ToInt32(c)
  21. If ascii = 12288 Then
  22. sb.Append(Convert.ToChar(32))
  23. Else
  24. If ascii > 65280 And ascii <>Then
  25. sb.Append(Convert.ToChar(ascii - 65248))
  26. Else
  27. sb.Append(Convert.ToChar(ascii))
  28. End If
  29. End If
  30. Next

  31. Return sb.ToString
  32. End Function

沒有留言:

張貼留言