yanmin

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  16 随笔 :: 1 文章 :: 9 评论 :: 0 Trackbacks

2007年10月29日 #

     摘要:   阅读全文
posted @ 2012-07-12 16:48 yanmin 阅读(852) | 评论 (0)编辑 收藏

最近做一个项目,里面很多特殊字符,引发了一些问题,解决后很开心,特别来分享。
特殊字符:
Jörg Ranau
Sigutė Jakštonytė
Côte d'Ivoire

数据库手工导入数据

1 先检查数据库的字符集和客户端字符集是否一致。 采用的是UTF8
查看语句:
select * from nls_database_parameters

2 若是采用DOS 下的SQLPLUS 导入数据,需要set NLS_LANG=AMERICAN_AMERICA.UTF8
windows:    set NLS_LANG=AMERICAN_AMERICA.UTF8
unix:    NLS_LANG=AMERICAN_AMERICA.UTF8

3:   检查导入的数据的文件格式,格式采用: UTF8 without BOM, 
可以用NOTEPAD++, CONVER TO UTF8 without BOM
也可以用txt , 转换成UTF8.

第3点非常重要,之前忽略了,发现插入导入数据库后,数据显示不对。

验证你导入的数据是否正确可以用ORACLE DUMP 命令。
select dump(country_desc),country_desc  from tb_test  where testcode='1';
Typ=1 Len=14: 67,195,180,116,101,32,100,39,73,118,111,105,114,101        Côte d'Ivoire


数据库脚本中遇到特殊字符:
1:  单引号‘ , oracle 脚本需要写成 两个单引号
UPDATE pi_portal_nday SET ND_CTY='Côte d'‘Ivoire' WHERE ND_ID IN (152,162);

2: 特殊字符&, oracle 表示需要的参数, 若是数据中有这个有2个方法:
第1 种: set define off;

第2种:
set escape on;
然后将所有的&, 替换成/&。

3: 空行
用<br> 代替。


JAVA 代码导入数据:

要导入的数据都放在TXT 类型的文件里,通过batch job 导入数据库。 
检查导入的数据的文件格式,格式采用: UTF8 without BOM, 
可以用NOTEPAD++, CONVER TO UTF8 without BOM

java 代码:
1 读文件的时候采用 UTF8格式。

InputStreamReader read = new InputStreamReader (new FileInputStream(file),"UTF-8");
BufferedReader inBuf=new BufferedReader(read); 

2 检查所用开发工具的文件ENCODING 字符。
这个就是会为什么导致没发现 读文件错误,在开发工具中打出的LOG 欺骗了我们的眼睛。

我的开发工具BEA JAVA 文件默认ENCODING cp1252, 改成UTF8 就好了。这个特别容易忽略,当在控制台看LOG的时候,发现读过来的文件里的内容打出来都正确,就忽略了JAVA的源文件。认为是从unicode转换 utf8 有问题,特别将字符又做了处理,发现插入数据库还是不正确。 修改了ENCODING 字符字符后发现读入文件就不对了。这样轻松就解决了。 所以只要修改了读文件的时候采用 UTF8格式就可以啦。


JAVA 代码中直接赋值的或是页面录入的。
1: 页面的就很简单了,JSP 或是HTML ,里面加入字符是UTF8的就OK
2: 代码里面的,需要转换:
byte[] byteArr1 = columnValueBe.getBytes("UTF-8");
columnValue = new String(byteArr1, "UTF-8");













posted @ 2011-05-20 18:29 yanmin 阅读(1977) | 评论 (1)编辑 收藏

     用了这么多年计算机, 发现很多计算机的快捷命令都不知道, 汗啊,  从网上搜寻下一些,COPY 在这是没用的,打下来用的时候就看:

这些命令都是从开始——运行处进行的(windows键+R)

       'cmd'     这个命令是调用类似dos的命令窗口的命令,在这里你可以像操作DOS一样操作Windows.

       'inetmgr'   这个命令相信做过网站的都知道,对了这就是调用IIS的快捷命令。

       'mstsc'     这个是用来启动远程桌面连接的快捷命令,相信搞过网络的人对此不会陌生。

       'regedit'   这个命令大家都很熟悉,是用来调用注册表的。

       'appwiz.cpl'     进入添加和删除程序的快捷命令

       'control userpasswords2'         进入用户账户设置界面的命令

       'cleanmgr'                       磁盘垃圾清理快捷命令

      'command.com'               调用的则是系统内置的 NTVDM,一个 DOS虚拟机。它完全是一个类似 Virtual PC 的 虚拟环

境,和系统本身联系不大。当我们在命令提示符下运行 DOS 程序时,实际上也 是自动转移到 NTVDM虚拟机下,和 CMD

本身没什么关系。

      'calc'           启动计算器

      'chkdsk.exe'                 磁盘检查

      'compmgmt.msc'           计算机管理

      'devmgmt.msc'               设备管理器

      diskmgmt.msc              磁盘管理实用程序

      'dfrg.msc '                      磁盘碎片整理程序

      'drwtsn32'             系统医生

      'dvdplay'                Windows Media Player

      'explorer'               资源管理器

      'dxdiag'                   DirectX Diagnostic Tool

      'gpedit.msc'           组策略编辑器

      'gpupdate /target:computer /force'              强制刷新组策略

      'eventvwr.exe'                       事件查看器

      'logoff'                    注销命令

      'lusrmgr.msc'            本地用户和组   

      'msinfo32'                   系统信息

      'msconfig'                   系统配置实用程序

      'net start (servicename)'        启动该服务

      'net stop (servicename)'停止该服务

      'notepad'           记事本

     'nusrmgr.cpl'       同control userpasswords,打开用户帐户控制面板

     'Nslookup'           IP地址侦测器

     'oobe/msoobe /a'             检查XP是否激活

     'perfmon'                计算机性能监视器

     'regedit'                   系统注册表

     'regedt32'                 注册表编辑器

     'regsvr32 /u *.dll'      停止dll文件运行

     'route print'             查看路由表

     'rononce -p'             15秒快速关机

     'rsop.msc'               组策略结果集

     'rundll32.exe rundll32.exe %Systemroot%\System32\shimgvw.dll,ImageView_Fullscreen'    启动一个空白的Windows 图

片和传真查看器

     ' secpol.msc'             本地安全策略

     'services.msc'            本地服务设置

     'sfc /scannow'          启动系统文件检查器

     'sndrec32'               录音机

     'taskmgr'                 任务管理器

     'tsshutdn'               60秒倒记时关机命令

     'winchat'                  winxp自带局域网聊天

     'winmsd'                  系统信息

     'winver'                  显示About Windows 窗口

     'wupdmgr'                 update

     'firewall.cpl'             防火墙

     'magnify'                  放大镜

     'sysdm.cpl'               系统属性

     'sysdm.cpl'               windows系统安全工具

     'write'                     写字板

     'tourstart'                Windows XP 漫游

     'utilman'                   辅助工具管理器

    'spider'                     蜘蛛牌游戏

    'sysedit'                   系统配置编辑器

    系统文件检查工具(立即扫描) sfc /scannow

   系统文件检查工具(下次启动时扫描) sfc /scanonce

   系统文件检查工具(每次启动时扫描) sfc /scanboot

   系统文件检查工具(返回默认设置) sfc /revert

   系统文件检查工具(清除文件缓存) sfc /purgecache

   系统文件检查工具(设置缓存大小=x) sfc /cachesize=x

   'cliconfg'                SQL Client客户端网络实用工具

   'mmsys.cpl'             声音和音频设备属性       

  'shutdown'               关闭windows

  'fsmgmt.msc'           共享文件夹

   'wscui.cpl'              Windows安全中心

   'control schedtasks'       任务计划

   'sticpl.cpl'               扫描仪与相机

    'ntmsmgr.msc'         可移动存储

    'intl.cpl'             区域的语言选择

    'eudcedit'          TrueType造字程序

    'control printers'    打印机和传真

   'powercfg.cpl'          电源选项属性

   'telephon.cpl'      电话与调制解调器选项

    'osk'           屏幕键盘

    'odbccp32.cpl'           ODBC数据源管理器

    'packager'              对象包装程序

    'ncpa.cpl' /'control netconnections'            网络连接

    'netsetup.cpl'        网络连接向导

    'main.cpl' /'control mouse'         鼠标属性

    'winmine'                 扫雷游戏

    'secpol.msc'            本地安全设置

    'control keyboard'         键盘属性

   IP配置实用程序(显示连接配置) ipconfig /all
  IP配置实用程序(显示DNS缓存内容) ipconfig /displaydns
  IP配置实用程序(删除DNS缓存内容) ipconfig /flushdns
  IP配置实用程序(释放全部(或指定)适配器的由DHCP分配的动态IP地址) ipconfig /release
  IP配置实用程序(为全部适配器重新分配IP地址) ipconfig /renew
  IP配置实用程序(刷新DHCP并重新注册DNS) ipconfig /registerdns
  IP配置实用程序(显示DHCP Class ID) ipconfig /showclassid
  IP配置实用程序(修改DHCP Class ID) ipconfig /setclassid

  'inetcpl.cpl'                internet属性

   'ciadv.msc'                  索引服务

  'winver'                      检查windows版本号

  'mplayer2'                  简易widnows media player

   'mspaint'                     画图板

   'mem.exe'                显示内存使用状况

   'compmgmt.msc'               计算机管理

   'wmimgmt.msc'                   打开windows管理体系结构(WMI)

   'ntbackup'                          系统备份与还原

  'narrator'                         屏幕“讲述人”

  'netstat  -an'                   (TC)命令检查接口

  'syncapp'                     创建一个公文包

   'sigverif'                       文件签名验证程序

    'certmgr.msc'               证书管理实用程序

   'iexpress'                     木马捆绑工具,系统自带

    'access.cpl'                   辅助功能选项

    'fsquirt'                  Bluetooth文件传送向导

    'dcomcnfg'                     组件服务

     'timedate.cpl'                 日期时间属性

     'ddeshare'                         DDE共享

     'control desktop'             显示属性

     'desk.cpl'                        显示属性

     'control.cpl'                  显示属性的外观选项卡

     'sigverif'                     文件签名验证 

    快速查找 findfast.cpl

   文件夹选项 control folders

   字体文件夹 control fonts

   字体文件夹 fonts

    'freecell'         空档接龙游戏 

    'joy.cpl'              游戏控制 

posted @ 2008-01-03 10:00 yanmin 阅读(238) | 评论 (1)编辑 收藏

     toad 中的中文显示“靠”

本来就超级忙,被迫重装了系统,重新建了库,一切都OK的时候,发现用TOAD连接ORACLE 数据库,里面的中文字都显示“靠”, 第一个反映,遭了,数据库文字设置不对,要是数据库重装,那又要浪费2天!!

幸好,用其他机器的TOAD,中文字显示正确; 明白了是自己新装的操作系统的原因。 网上查到解决办法, 解决了,心又落回来了!!

    在环境变量中设置系统环境变量:

   NLS_lANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK

posted @ 2007-10-29 11:45 yanmin 阅读(728) | 评论 (1)编辑 收藏