gznz12345 发表于 2015-7-7 08:24:35

mongodb中关于中文乱码问题的处理

  经过几番处理,终于将这个问题解决了,以免其他mongodb使用者在由遇到相同问题时不知所措,特写下处理过程如下(感觉mongodb-user组的热心人士们):
  测试代码如下


代码



1 namespace Test
2 {
3   class Program
4   {
5         static void Main(string[] args)
6         {
7             try
8             {
9               string conn = "mongodb://localhost";
10               MongoServer server = MongoServer.Create(conn);
11               MongoDatabase db = server.GetDatabase("bar");
12               MongoCollection persons = db.GetCollection("persons");
13               persons.RemoveAll();
14               
15               #region mongodb新增测试
16               string chineseName = "李小龙";
17               BsonDocument person = new BsonDocument {
18                     {"chineseName", chineseName},
19                     {"englishName", "Bruce Lee"}
20               };
21               
22               persons.Insert(person);
23
24               var found = persons.FindOneAs();
25               var nameInDatabase = found["chineseName"];
26               Console.WriteLine("the value are{0} equle", (nameInDatabase == chineseName) ? "":" not ");               
27               #endregion                              
28             }
29             catch (Exception ex)
30             {
31               Console.WriteLine(ex.Message);
32             }
33             finally
34             {
35               Console.ReadKey();
36             }
37         }
38   }
39 }
40
  
  
  经过上面的插入,后台数据库中再次查询时就会出现乱码,但程序中确显示正常,这主要是因为cmd窗口的编码方式引起的,因为mongodb后台的字符编码都是utf-8的,所以修改cmd窗口的编码如下:
  (1)chcp 65001
  (2)选择“属性”中的字体,除“点阵字体”外所有的都行
  再次运行就显示正常了。
  
  
页: [1]
查看完整版本: mongodb中关于中文乱码问题的处理