VB代码将文本文件转换为UTF16

时间:2012-12-10 22:21:38

标签: .net vb.net unicode utf-16

我是VB代码的新手并且正在努力使用Encode,Decode。我需要帮助在VB.NET中将文本文件从ANSI转换为UTF-16LE。这就是我到目前为止所做的。后来我使用BulkInsert进行数据库操作,最终得到像

这样的垃圾数据
  

∩┐╜000000000000000000000094409574896680&安培;∩┐╜

应该是

  

Ì095837491150000349192784421039109162%Î

仅供参考,数据库列为NVARCHAR。

Dim sr As System.IO.StreamReader = New System.IO.StreamReader(filePath, System.Text.Encoding.Default)
Dim sw As System.IO.StreamWriter = New StreamWriter(pPath & pFilename & "_TEMP", True, System.Text.Encoding.Unicode)
    While Not sr.EndOfStream
                sw.writeLine(sr.readLine)
    End While
sr.Close()
sw.Close()

有人可以帮忙吗?感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用ReadAllTextWriteAllText方法:

System.IO.File.WriteAllText(dest, File.ReadAllText(source, Encoding.Default), Encoding.Unicode)