Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > 数据库字符编码和界面文本输入框字数限制问题
【标  题】:数据库字符编码和界面文本输入框字数限制问题
【关键字】:
【来  源】:http://blog.csdn.net/zhaohuabing/archive/2006/09/26/1289362.aspx

数据库字符编码和界面文本输入框字数限制问题

Your Ad Here 在工作中遇到一个问题,有一个字段在oracle数据库中长度限制为2000,该字段可以从用户界面输入,因此需要进行限制输入框的输入字符数,保证符合oracle数据库中该字段的长度限制。经过测试发现,输入英文字符可以输入2000个,输入中文字符可以输入666个,如果中英文混合输入,只能输入666到2000之间,如果输入的字符数目超过上述的限制,将报数据库输入字段超长的错误。 原因应该是oracle采用了UTF-8的编码格式,该编码格式中英文占一个字符,中文占三个字符,在界面中可以这样限制输入: 利用String.getBytes("UTF-8")可以得到输入字符的字节大小

    class LimitedDocument extends PlainDocument
    {

        /**
         * 插入字符
         * @param offs 输入的字符在textField中的偏移量
         * @param str 当前输入的字符串
         * @param a
         * @throws BadLocationException
         */
        public void insertString(int offs, String str, AttributeSet a) throws BadLocationException
        {       
            if (str.getBytes("UTF-8").length > 2000)
            {
                Toolkit.getDefaultToolkit().beep();
            }
            else
            {
                super.insertString(offs, str, a);
            }
        }
    }

    JTextArea limitedTextArea = new JTextArea();
    limitedTextArea.setDocument(new LimitedDocument());


 

如何实现动态添加Microsoft Visual FoxPro 的 ODBC 和 Access 的 ODBC:【上一篇】
AOP入门的简单例子(Spring AOP实现):【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • 在RHEL AS 3上安装Oracle10g v2手册
  • 附表:"选项"对话框的说明(1)
  • [转weihuang ]如何实现如下矩阵?
  • VC绘图总结
  • 3 如何加快菜单的显示速度?
  • 传奇世界 绚丽多姿1.72版彩色传世登场
  • 在配置联想PC使用的Dlink 530TX RevB是要注意的一些细节
  • 用qstat查PBS空闲节点(CPU)
  • 嵌入式Linux技术
  • 用BASIC语言设计Windows风格的用户接口
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.