麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 開(kāi)發(fā) > XML > 正文

用XML將機(jī)器內(nèi)碼轉(zhuǎn)換為人們?nèi)菀桌斫獾男畔?/h1>
2024-09-05 20:55:28
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  程序中通常會(huì)有一些錯(cuò)誤代碼或標(biāo)識(shí),為了程序中方便這些東西通常不會(huì)使用漢字,經(jīng)常在程序中用的是一些FileError或數(shù)字。還有就是在編碼中經(jīng)常使用的枚舉標(biāo)識(shí)對(duì)象的狀態(tài)。而通常這些信息會(huì)直接的或間接的現(xiàn)實(shí)給用戶,可用戶需要到的是容易理解的漢字描述。以前要么將這些標(biāo)識(shí)和枚舉的轉(zhuǎn)換規(guī)則硬編碼到程序中,要么就直接提示給用戶。前者沒(méi)有很好的擴(kuò)展性,而后者則讓用戶一頭霧水?,F(xiàn)可以用流行的XML(配置文件)保存提示信息,然后用一個(gè)對(duì)象將機(jī)器中的內(nèi)碼轉(zhuǎn)換為人們?nèi)菀桌斫獾男畔ⅰ?br />  轉(zhuǎn)換對(duì)象如下:
  /**////
  ///翻譯類,將內(nèi)部碼翻譯成容易理解的中文
  ///
  ///
  ///根據(jù)配置文件中的信息,將系統(tǒng)內(nèi)部碼(錯(cuò)誤碼、成功碼)翻譯成中文(或人容易理解的語(yǔ)言)。
  ///
  publicstaticclassTranslation
  ...{
  privatestaticSystem.IO.FileSystemWatcherwatcher;
  privatestaticXmlDocumentcontent;
  privatestaticstringconfigFile;
  privatestaticobjectlocker=newobject();
  
  /**////
  ///加載配置文件
  ///
  ///
  publicstaticvoidConfigure(stringconfigFile)
  ...{
  LoadFile(configFile);
  if(watcher!=null)
  ...{
  watcher.Dispose();
  }
  watcher=newFileSystemWatcher(Path.GetDirectoryName(configFile),Path.GetFileName(configFile));
  watcher.Changed =newFileSystemEventHandler(watcher_Changed);
  }
  
  /**////
  ///加載默認(rèn)配置文件
  ///
  publicstaticvoidConfigure()
  ...{
  if(System.Web.HttpContext.Current!=null)
  ...{
  Configure(System.Web.HttpContext.Current.Server.MapPath("~/translation.config"));
  }
  else
  ...{
  Configure(System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase "/" "translation.config");
  }
  }
  
  /**////
  ///加載文件內(nèi)容
  ///
  ///
  privatestaticvoidLoadFile(stringconfigFile)
  ...{
  lock(locker)
  ...{
  XmlDocumentdoc=newXmlDocument();
  doc.Load(configFile);
  
  content=doc;
  Translation.configFile=configFile;
  }
  }
  
  /**////
  ///當(dāng)文件變更時(shí),從新加載文件
  ///
  ///
  ///
  privatestaticvoidwatcher_Changed(objectsender,FileSystemEventArgse)
  ...{
  LoadFile(configFile);
  }
  
  /**////
  ///獲取Enum的解釋,如果Enum有Flag標(biāo)記,則使用逗號(hào)分隔各個(gè)解釋
  ///
  ///
  ///
  publicstaticstringGetEnumDescription(EnumenumValue)
  ...{
  returnGetEnumDescription(enumValue,",");
  }
  
  /**////
  ///獲取Enum的解釋,如果Enum有Flag標(biāo)記,則使用sparator分隔各個(gè)解釋
  ///
  ///
  ///
  ///
  publicstaticstringGetEnumDescription(EnumenumValue,stringsparator)
  ...{
  Typetype=enumValue.GetType();
  
  //檢查類型是否有Flags特性
  object[]attrs=type.GetCustomAttributes(typeof(FlagsAttribute),false);
  if(attrs.Length>0)
  ...{
  StringBuilderbuilder=newStringBuilder();
  Arrayarr=Enum.GetValues(type);
  foreach(Enumenuinarr)//循環(huán)獲取每一個(gè)值的解釋
  ...{
  if((Convert.ToUInt64(enumValue)&Convert.ToUInt64(enu))==Convert.ToUInt64(enu))//判斷是否有這個(gè)值
  ...{
  builder.Append(GetEnumDes(type,enu.ToString()));
  builder.Append(sparator);
  }
  }
  if(builder.Length!=0)//拿掉最后的分隔符
  builder.Remove(builder.Length-sparator.Length,sparator.Length);
  returnbuilder.ToString();
  }
  else
  ...{
  returnGetEnumDes(type,enumValue.ToString());
  }
  }
  
  /**////
  ///獲取某一Enum類型值的解釋
  ///
  ///
  ///
  ///
  privatestaticstringGetEnumDes(Typetype,stringvalue)
  ...{
  stringxquery="/translation/enum/" type.FullName "/" value;
  XmlNodenode=content.SelectSingleNode(xquery);
  if(node!=null)
  returnnode.InnerText;
  else
  returnvalue;
  }
  
  /**////
  ///翻譯指定值
  ///
  ///
  ///
  publicstaticstringGetValueDescription(objectobj)
  ...{
  returnGetValueDescription("default",obj);
  }
  
  /**////
  ///在指定組中翻譯指定值
  ///
  ///
  ///
  ///
  publicstaticstringGetValueDescription(stringgroup,objectobj)
  ...{
  if(obj==null)
  return"null";
  
  stringxquery="/translation/description[@group='" group "']/add[@key='" obj.ToString() "']/@value";
  XmlNodenode=content.SelectSingleNode(xquery);
  if(node==null)
  returnobj.ToString();
  else
  returnnode.Value;
  }
  }
上一頁(yè)12 下一頁(yè) 閱讀全文
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

主站蜘蛛池模板: 欧美国产成人在线 | 国产一级在线免费观看 | 亚洲天堂在线电影 | 毛片免费在线播放 | 久草视频手机在线观看 | 国产伦久视频免费观看视频 | 激情久久一区二区 | 色综合久久久久久久久久 | 成人免费精品视频 | 一级电影在线观看 | 久久国产乱子伦精品 | 最新中文字幕免费视频 | 久久久久久久黄色片 | 久久在线精品视频 | 中国女警察一级毛片视频 | 性看小视频| 日韩午夜片 | 天堂精品久久 | 国产又粗又爽又深的免费视频 | 国产三级在线观看a | h视频免费观看 | 亚洲精品成人久久久 | 91成人午夜性a一级毛片 | 中文字幕免费在线看 | 激情夜色| 毛片午夜| 宅男视频在线观看免费 | 午夜视频在线 | 在线成人免费视频 | 日韩毛片在线看 | 九九热免费在线观看 | 欧美亚洲国产日韩 | 国产成人免费精品 | 在线观看免费毛片视频 | 91精品国产综合久久婷婷香 | 亚洲午夜影院在线观看 | 久草视频手机在线观看 | 一区二区视 | 国产欧美在线一区二区三区 | 黄色毛片免费看 | 国产免费福利视频 |