[转帖]解决Jbuilder光标对不齐的问题

大家常常说JBuilder在中文系统中存在光标错位的问题,都认为这是JBuilder

的一个Bug,其实这实在是冤枉JBuilder了!大家讨论出来的解决方法无外乎

两种:

1、将编辑器的字体改为宋体,用这种方法带来的问题是,在宋体下的英文字

体实在难看,阅读起来不太顺眼;

2、就是将编辑器字体的粗体属性去掉,这样也影响代码的可读性。

其实,造成JBuilder光标错位的问题并不是Borland的错误,而是Java的宗

师——Sun的罪过!大家一定知道i18n吧?在不同的区域设置中,JDK自动调

用与之相对应的properties文件,而在JDK中,Sun所推出的与中文系统相对

应的properties文件存在问题,在它之中没有区分英文字体的正

常、粗体和斜体,从而导致了以上所说的问题,解决的方法很简单,只要将这

个properties文件修改正确就可以了,修改方法如下:

在jre/lib目录中找到font.properties.zh文件,编辑这个文件并修改成如下内容:

# @(#)font.properties.zh1.16 00/10/06

#

# AWT Font default Properties for Chinese Windows

#

dialog.plain.0=Arial,ANSI_CHARSET

dialog.plain.1=\u5b8b\u4f53,GB2312_CHARSET

dialog.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialog.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialog.bold.0=Arial Bold,ANSI_CHARSET

dialog.bold.1=\u5b8b\u4f53,GB2312_CHARSET

dialog.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialog.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialog.italic.0=Arial Italic,ANSI_CHARSET

dialog.italic.1=\u5b8b\u4f53,GB2312_CHARSET

dialog.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialog.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialog.bolditalic.0=Arial Bold Italic,ANSI_CHARSET

dialog.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET

dialog.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialog.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.plain.0=Courier New,ANSI_CHARSET

dialoginput.plain.1=\u5b8b\u4f53,GB2312_CHARSET

dialoginput.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.bold.0=Courier New Bold,ANSI_CHARSET

dialoginput.bold.1=\u5b8b\u4f53,GB2312_CHARSET

dialoginput.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.italic.0=Courier New Italic,ANSI_CHARSET

dialoginput.italic.1=\u5b8b\u4f53,GB2312_CHARSET

dialoginput.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.bolditalic.0=Courier New Bold Italic,ANSI_CHARSET

dialoginput.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET

dialoginput.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

dialoginput.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

serif.plain.0=Times New Roman,ANSI_CHARSET

serif.plain.1=\u5b8b\u4f53,GB2312_CHARSET

serif.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

serif.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

serif.bold.0=Times New Roman Bold,ANSI_CHARSET

serif.bold.1=\u5b8b\u4f53,GB2312_CHARSET

serif.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

serif.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

serif.italic.0=Times New Roman Italic,ANSI_CHARSET

serif.italic.1=\u5b8b\u4f53,GB2312_CHARSET

serif.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

serif.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

serif.bolditalic.0=Times New Roman Bold Italic,ANSI_CHARSET

serif.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET

serif.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

serif.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.plain.0=Arial,ANSI_CHARSET

sansserif.plain.1=\u5b8b\u4f53,GB2312_CHARSET

sansserif.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.bold.0=Arial Bold,ANSI_CHARSET

sansserif.bold.1=\u5b8b\u4f53,GB2312_CHARSET

sansserif.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.italic.0=Arial Italic,ANSI_CHARSET

sansserif.italic.1=\u5b8b\u4f53,GB2312_CHARSET

sansserif.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.bolditalic.0=Arial Bold Italic,ANSI_CHARSET

sansserif.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET

sansserif.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

sansserif.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.plain.0=Courier New,GB2312_CHARSET

monospaced.plain.1=\u5b8b\u4f53,GB2312_CHARSET

monospaced.plain.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.plain.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.bold.0=Courier New Bold,GB2312_CHARSET

monospaced.bold.1=\u5b8b\u4f53,GB2312_CHARSET

monospaced.bold.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.bold.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.italic.0=Courier New Italic,GB2312_CHARSET

monospaced.italic.1=\u5b8b\u4f53,GB2312_CHARSET

monospaced.italic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.italic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.bolditalic.0=Courier New Bold Italic,GB2312_CHARSET

monospaced.bolditalic.1=\u5b8b\u4f53,GB2312_CHARSET

monospaced.bolditalic.2=WingDings,SYMBOL_CHARSET,NEED_CONVERTED

monospaced.bolditalic.3=Symbol,SYMBOL_CHARSET,NEED_CONVERTED

# name aliases

#

#alias.timesroman=serif

#alias.helvetica=sansserif

#alias.courier=monospaced

# for backward compatibility

#timesroman.0=Times New Roman,ANSI_CHARSET

#helvetica.0=Arial,ANSI_CHARSET

#courier.0=Courier New,ANSI_CHARSET

zapfdingbats.0=WingDings,SYMBOL_CHARSET

# font filenames for reduced initialization time

#

filename.\u5b8b\u4f53=SIMSUN.TTF

filename.Arial=ARIAL.TTF

filename.Arial_Bold=ARIALBD.TTF

filename.Arial_Italic=ARIALI.TTF

filename.Arial_Bold_Italic=ARIALBI.TTF

filename.Courier_New=COUR.TTF

filename.Courier_New_Bold=COURBD.TTF

filename.Courier_New_Italic=COURI.TTF

filename.Courier_New_Bold_Italic=COURBI.TTF

filename.Times_New_Roman=TIMES.TTF

filename.Times_New_Roman_Bold=TIMESBD.TTF

filename.Times_New_Roman_Italic=TIMESI.TTF

filename.Times_New_Roman_Bold_Italic=TIMESBI.TTF

filename.WingDings=WINGDING.TTF

filename.Symbol=SYMBOL.TTF

# Default font definition

#

default.char=2751

# Static FontCharset info.

#

#fontcharset.dialog.0=sun.io.CharToByteCp1252

fontcharset.dialog.1=sun.io.CharToByteGBK

fontcharset.dialog.2=sun.awt.windows.CharToByteWingDings

fontcharset.dialog.3=sun.awt.CharToByteSymbol

#fontcharset.dialoginput.0=sun.io.CharToByteCp1252

fontcharset.dialoginput.1=sun.io.CharToByteGBK

fontcharset.dialoginput.2=sun.awt.windows.CharToByteWingDings

fontcharset.dialoginput.3=sun.awt.CharToByteSymbol

#fontcharset.serif.0=sun.io.CharToByteCp1252

fontcharset.serif.1=sun.io.CharToByteGBK

fontcharset.serif.2=sun.awt.windows.CharToByteWingDings

fontcharset.serif.3=sun.awt.CharToByteSymbol

#fontcharset.sansserif.0=sun.io.CharToByteCp1252

fontcharset.sansserif.1=sun.io.CharToByteGBK

fontcharset.sansserif.2=sun.awt.windows.CharToByteWingDings

fontcharset.sansserif.3=sun.awt.CharToByteSymbol

#fontcharset.monospaced.0=sun.io.CharToByteCp1252

fontcharset.monospaced.1=sun.io.CharToByteGBK

fontcharset.monospaced.2=sun.awt.windows.CharToByteWingDings

fontcharset.monospaced.3=sun.awt.CharToByteSymbol

# Exclusion Range info.

#

exclusion.dialog.plain.0=00a0-f8ff

exclusion.dialog.italic.0=00a0-f8ff

exclusion.dialog.bold.0=00a0-f8ff

exclusion.dialog.bolditalic.0=00a0-f8ff

exclusion.dialoginput.plain.0=00a0-f8ff

exclusion.dialoginput.italic.0=00a0-f8ff

exclusion.dialoginput.bold.0=00a0-f8ff

exclusion.dialoginput.bolditalic.0=00a0-f8ff

exclusion.serif.plain.0=00a0-f8ff

exclusion.serif.italic.0=00a0-f8ff

exclusion.serif.bold.0=00a0-f8ff

exclusion.serif.bolditalic.0=00a0-f8ff

exclusion.sansserif.plain.0=00a0-f8ff

exclusion.sansserif.italic.0=00a0-f8ff

exclusion.sansserif.bold.0=00a0-f8ff

exclusion.sansserif.bolditalic.0=00a0-f8ff

exclusion.monospaced.italic.0=00a0-f8ff

exclusion.monospaced.bold.0=00a0-f8ff

exclusion.monospaced.bolditalic.0=00a0-f8ff

# charset for text input

#

inputtextcharset=GB2312_CHARSET

保存后,一切问题就解决了!

这种方法也适用于任何相同的问题。

[题外话]这种错误SUN真的应该好好反省一下了,希望以后他们做的东西能够

测试更好一些,不然……

java如何对不齐_[转帖]解决Jbuilder光标对不齐的问题相关推荐

  1. java 写文件 权限不够_教你解决Linux系统中JAVA创建文件后权限不足的问题

    在作业中,项目使用文件上传. 这个功能很常见. 当Kai Ge今天更改其官方帐户时,他遇到了一个问题,即无法访问下载的文件,也无法通过浏览器访问该文件. 它是怎么发生的? 经过许多问题之后,事实证明这 ...

  2. java占用内存多大_[转帖]一个Java工具到底占用多大内存?

    一个Java工具到底占用多大内存? https://www.jianshu.com/p/194b745884a5 最近在调研MAT和VisualVM源码实现,遇到一个可疑问题,两者盘算出来的工具巨细不 ...

  3. Java中文乱码破碎重组_总结彻底解决Spring MVC+Mybatis中文乱码问题

    Java对于新手最容易出现的问题就是中文乱码的问题.今天我就来总结一下彻底解决Spring mvc+Mybatis中文乱码的方案. 首先要看打一断点看一下Controller接收到参数值是否正常.如果 ...

  4. java无法重命名文件_巧妙地解决Java文件重命名失败的问题

    一.问题描述 1.大家在用log4j时,可能会遇到下面的一个报错信息: Failed to rename [/opt/proj.log] to [/opt/proj.log.2014-03-20]. ...

  5. java编程实现素数环_回溯法解决素数环

    #include #include using namespace std;#define N 100000int isp[2 * N];int a[N];int visited[N];int is_ ...

  6. 【源码+图片素材】Java王者荣耀游戏开发_开发Java游戏项目【王者荣耀】1天搞定!!!腾讯游戏_Java课程设计_Java实战项目_Java初级项目

    王者荣耀是当下热门手游之一,小伙伴们是否想过如何制作一款属于自己的王者荣耀游戏呢? 本课程讲解了一个王者荣耀游戏的详细编写流程,即使你是刚入门Java的新手,只要你简单掌握了该游戏所需要的JavaSE ...

  7. java周志第二周_20165325 2017-2018-2 《Java程序设计》结对编程_第二周:四则运算

    20165325 2017-2018-2 <Java程序设计>结对编程_第二周:四则运算 一.码云链接 1.Git提交日志已经实现一个功能/一个bug修复的注释说明,如图所示: 2.测试代 ...

  8. JAVA编程习题及答案_完美版

    JAVA编程习题及答案_完美版 原创 lingwu7 最后发布于2017-08-15 20:01:12 阅读数 10796 收藏 发布于2017-08-15 20:01:12 版权声明:本文为博主原创 ...

  9. 微信小程序系统教程Java版[3/3阶段]_微信小程序电商系统-翟东平-专题视频课程...

    微信小程序系统教程Java版[3/3阶段]_微信小程序电商系统-2445人已学习 课程介绍         微信小程序系统教程[初级阶段],微信小程序0基础学起,讲解微信小程序开发的基础知识. 微信小 ...

最新文章

  1. 链路聚合(Link Aggregation)与权重
  2. CSDN博客转载攻略
  3. 外包网络推广公司探索出高排名网站优化的技巧!
  4. php怎么读取上传文件的md5,PHP获取上传文件的md5码_PHP教程
  5. apt包管理 Android,apt软件包管理学习(示例代码)
  6. 博弈入门(思想)HDkiki‘s game;
  7. 【Vue】Vue入门 -(本地篇+网络篇)代码示例及运行效果
  8. 高性能mysql看不懂_高性能mysql笔记1
  9. Nginx的执行阶段详解
  10. js+dom开发第十六天
  11. Linux学习笔记:GDB常用命令
  12. 5.9 亿国内用户简历遭殃,数据库持续“裸奔”!
  13. Android View框架总结(一)
  14. mysql的limit经典用法及优化
  15. Python-玩转数据-XML 解析
  16. 怎样区分线性和非线性_线性与非线性的区别(线性分析、线性模型)
  17. 如何在ubuntu18中设置nvidia显卡风扇转速 fan speed linux
  18. python发朋友圈突破朋友圈限制_用Python发一个高逼格的朋友圈
  19. pdf太大怎么缩小兆数?怎样将pdf文档储存变小?
  20. 服务器上显示系统初始化失败怎么回事,网络初始化失败怎么处理

热门文章

  1. autojump 安装使用
  2. Android系统漏洞分析概述
  3. UE4 ——蓝图控制昼夜交替(移动方向光和太阳光的位置)(学习笔记)
  4. powershell下使用linux命令,PowerShell-PowerShell(命令行脚本工具)下载 v7.0.3官方版--pc6下载站...
  5. 苹果地图(MapKit)总结
  6. 行业分析| 为什么在线自习室这么受年轻人的追捧?
  7. 恶意软件现在分布在OneNote文件中以逃避防御
  8. OS ---PV大题
  9. ssm+JSP计算机毕业设计在线考试系统qiw6b【源码、程序、数据库、部署】
  10. css中的单位换算_css绝对长度单位主要有哪些?绝对长度单位之间如何换算?