橙路

2007年4月5日

读取本地文件发现的一点小问题
好久没写东西了,最近太忙了。今天做文件的操作发现点有趣的现象。放上来跟大家分享一下。

今天用IDEA做程序的本地文件的部分时,碰到一点小问题。程序如下:
 1 package example;
 2 
 3 import java.io.BufferedReader;
 4 import java.io.File;
 5 import java.io.FileNotFoundException;
 6 import java.io.FileReader;
 7 import java.io.IOException;
 8 
 9 
10 
11 public class FileOperation {
12 
13     /**
14      * @param args
15      */
16     public static void main(String[] args) {
17         // TODO Auto-generated method stub
18         FileOperation fo = new FileOperation();
19         String s = "";
20         try {
21             s = fo.bufferedReaderDemo("D:/Project/IntelliJ/BrowseVisual/Resource/res/fo1.txt");
22         } catch (IOException e) {
23             // TODO Auto-generated catch block
24             e.printStackTrace();
25         }
26         
27         System.out.println(s);
28 
29     }
30 
31     public String bufferedReaderDemo(String filename) throws IOException {
32         File file = new File(filename);
33         if (!file.exists() || file.isDirectory()) {
34             throw new FileNotFoundException();
35         }
36         BufferedReader br = new BufferedReader(new FileReader(file));
37         String temp;
38         StringBuffer sb = new StringBuffer();
39         temp = br.readLine();
40         while (temp != null) {
41             sb.append(temp).append(" ");
42             temp = br.readLine();
43         }
44         System.out.println(sb.length());
45 
46         return sb.toString();
47     }
48 
49 }

程序运行,IDEA输出空白,整个IDEA近乎进入假死状态。哪儿出问题了呢?经过排查否定了String和StringBuffer的问题,后来查看fo1.txt的文件格式居然是utf-8,难道跟这个有关系?经过测试,当fo1.txt只有10几K的情况下,没有问题,输出乱码,而当fo1.txt达到几十K的时候,IDEA就没法正常输出了,当fo1.txt文件格式改为gbk的话,文件1M照样正常运行。后又拿Eclipse测试,fo1.txt在utf-8下1M大小正常输出乱码(不过感觉好慢,除了IDEA那个假死状态,程序在正常运行情况下,感觉Eclipse比IDEA慢上不少,有点难以忍受了)。

嗯。写这个出来,只是想大家探讨探讨这到底是什么问题呢?为啥IDEA会出现这种状况呢?马上去NetBeans里测试测试。
posted @ 2007-05-21 17:40 刘明 阅读(1024) | 评论 (3) | 编辑 收藏
 
一篇有趣的招聘广告
今天看到番茄的一篇信息“一则非常牛掰招聘信息,TTM有才了~”,感觉蛮有趣的,就去招聘网站看了看,招聘方又改内容了,加了点解释和说明。

岗 位 描 述 

喜欢编程,有意识,自学能力强,准备储备外包软件人员,培养项目经理.能够正确认识软件行业的现状和未来,需要应届毕业生,不吸烟,不酗酒。
关于招聘的几点说明
听朋友说,我的招聘上了csdn论坛,并且成了众多程序员的攻击谩骂对象,csdn是我经常来的地方,我也非常敬仰这里的高手,可是看到无理的谩骂,觉得与“程序员"不符。我对我的招聘解释如下:
1、农村出身,三年内不谈女朋友,舍得吃苦。我出身农村,目前农村的父亲和兄弟姐妹还靠我金钱上的接济,目前许多学生,大学毕业,尤其是大专的,出来找不 到工作,找不到能够以后可以翻身,可以养家糊口的工作,许多学编程的,去了网通电信去做adsl的安装人员,去电子城装机器,去卖保险,今年挣800,明 年还是800,可能以后还是800。买房照顾家里都不能实现。有的连这样的工作找不到。所以我想给穷苦子弟,热爱编程的,提供一个提高的平台。不搞对象, 我想招聘那些先立业,后成家的人。穷苦子弟,四年大学,家庭欠债累累,出了校门,不长本事,光图享受,我觉得是对父母不孝,对社会不仁。
2、不吸烟喝酒。我觉得吸烟对自己身体,对社会都不利,完全是追求的个人享受。并且吸烟费钱,一个月烟钱,能够买一本好的书,能够订一年的软件报。
3、不善交际,能吃苦,坐的住,能够约束自己,没有其他生存途径,愿意长期从事编程的员工。我们找的是写程序的,不是跑销售的,天天电话不断,应酬不断, 怎么能够做这么烦燥的程序员工作。如果有其他的本事和能力,比如能够当老板,我劝你不要写程序,如果有营销能力,还是去跑市场。没有其它能力,喜欢编程的 人是我们寻找的对象。
4、公司管吃住,轮流做饭,24小时在公司,没有节假日,加班的概念,工作休息自主决定。吃饭自己不做行吗,让父母来做吗,天天吃饭店吗。因为吃住全在公司,所以基本整天在,当然有事可以请假。除了吃饭,睡觉,锻炼,就是在公司研究代码。你晚上工作了,白天可以大睡。
5、实行年工资,应届学生,第一年最少拿5000元回家过年; 我想问一下,现在的应届生,5月份到公司,年底能够拿多少钱回家给父母,我1年发一次工资,就是怕让你把钱花了,因为平常穿衣吃饭住宿理发看病公司全管, 你要钱何用。我不知道各位英雄们,第一年春节拿了多少钱给父母。实际上我们要给的多,去年给了8000,第二年的程序员,我们给了18000元钱。
6、大学期间,自己有微机,有c#或c++基础,机器带到公司。学专业,大学期间没有计算机,我怕不熟练,机器带到公司,因为卖掉没有多少钱,公司收购了,两下合适。实际上就有一个带了年脑来。
河北卓越科技信息公司是一家以做软件、网站开发为主的小公司,吃住办公都在一套四居室的居民房里,不喜欢软件编程,在这里没有丝毫乐趣。公司的目标是用软 件解决企业重复的劳动,提高其工作效率。公司需要的是快乐工作,工作快乐的员工。公司认为,只有喜欢,才有精品,才有回报。公司欲求把企业当家,把公司当 成自己终生归宿的员工,公司本身就是家庭,只有我为人人,才能人人为我,员工、老板是一家人。不怕没技术,怕你不爱好。不怕你没水平,怕你没人品,坚信人 品第一,技术第二。公司愿意提供一个生存、发展的平台,愿意提供一个钻研技术,忘我工作的平台。斤斤计较,自私自利的人请不要投递简历。公司认为想当元帅 的士兵不是我们招募的员工,我们需要能够正确认识自身价值,具有准确人生定位的朋友,共同发展。你有多大,公司有多大,公司有多大,你有多大!海阔凭鱼 跃,天高任鸟飞!

真正的的把公司当家的人,不会在意这些


相 关 要 求

不看文凭,只看人品,只看潜力
需要说的少,做的多的员工
招聘职位:软件编程
招聘人数:2人
要求:
1、男生,农村出身,身体健康,3年内不谈女朋友;
2、为人善良,忠诚,老实、勤奋,遵守公司制度,舍得吃苦,没有吸烟等不良嗜好;
3、爱好编程,就象爱好打游戏一样,把编程当成终生事业;
4、不善交际,能吃苦,坐的住,能够约束自己,没有其他生存途径,愿意长期从事编程的员工;
5、公司管吃住,轮流做饭,24小时在公司,没有节假日,加班的概念,工作休息自主决定;
6、实行年工资,应届学生,第一年最少拿5000元回家过年;
7、大学期间,自己有微机,有c#或c++基础,机器带到公司。


乍一看似乎说的有点道理,但做为一个程序员,我是一个人,一个独立自主的人,请不要喊着什么崇高的口号,把程序员当成机器或是奴隶。不过细想想也许人家就是要的这个广告效应也说不定,可能还免费替人家广告了的说。-_-!
posted @ 2007-04-19 16:30 刘明 阅读(3121) | 评论 (5) | 编辑 收藏
 
IntelliJ IDEA新版本开发工具信息
4月11日16:46分,处于茫茫顿顿中(昨天忙了整晚,就早上的时候勉强闭了会儿眼,最近在开发浏览器模拟浏览wml页面方面的东西,昨天一下子以前很多没发现的细节问题一下子都涌了上来,弄的自己的程序被自己改的都快不认识了,郁闷死了,只要努力重新修改主要类实现,经过10几个小时的努力才算基本OK),浏览IntelliJ IDEA的官方博客发现推出新的IntelliJ IDEA 7 Milestone版了,6版还没有用熟,7版就快出来了,说实话6的速度相对于我的机器来说有点慢,而让人兴奋的特性又对我吸引力有限,希望7的推出能对性能有个较好的提升,易用性和方便性,还有调试方面能够更上一层楼。哈哈。

有兴趣的朋友可以去这里IntelliJ IDEA下载:


这是我自己写的,算不上什么精华,不知道发到首页合不合适,如果不合适请版主发信息给我,谢谢。
posted @ 2007-04-11 17:13 刘明 阅读(1337) | 评论 (5) | 编辑 收藏
 
正则表达式详细解释
最近开发很多地方要用到正则表达式,网上搜罗了不少。目前把一些好的文章集合一下,算是个正则表达式的集锦吧。

以下部分转载自:BLoGGer

匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$)
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})?
匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$


下表是元字符及其在正则表达式上下文中的行为的一个完整列表:

\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个后向引用、或一个八进制转义符。
^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的Multiline 属性,^ 也匹配 ’\n’ 或 ’\r’ 之后的位置。
$ 匹配输入字符串的结束位置。如果设置了 RegExp 对象的Multiline 属性,$ 也匹配 ’\n’ 或 ’\r’ 之前的位置。
* 匹配前面的子表达式零次或多次。
+ 匹配前面的子表达式一次或多次。+ 等价于 {1,}。
? 匹配前面的子表达式零次或一次。? 等价于 {0,1}。
{n} n 是一个非负整数,匹配确定的n 次。
{n,} n 是一个非负整数,至少匹配n 次。
{n,m} m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。在逗号和两个数之间不能有空格。
? 当该字符紧跟在任何一个其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。
. 匹配除 "\n" 之外的任何单个字符。要匹配包括 ’\n’ 在内的任何字符,请使用象 ’[.\n]’ 的模式。
(pattern) 匹配pattern 并获取这一匹配。
(?:pattern) 匹配pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。
(?=pattern) 正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。
(?!pattern) 负向预查,与(?=pattern)作用相反
x|y 匹配 x 或 y。
[xyz] 字符集合。
[^xyz] 负值字符集合。
[a-z] 字符范围,匹配指定范围内的任意字符。
[^a-z] 负值字符范围,匹配任何不在指定范围内的任意字符。
\b 匹配一个单词边界,也就是指单词和空格间的位置。
\B 匹配非单词边界。
\cx 匹配由x指明的控制字符。
\d 匹配一个数字字符。等价于 [0-9]。
\D 匹配一个非数字字符。等价于 [^0-9]。
\f 匹配一个换页符。等价于 \x0c 和 \cL。
\n 匹配一个换行符。等价于 \x0a 和 \cJ。
\r 匹配一个回车符。等价于 \x0d 和 \cM。
\s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于[ \f\n\r\t\v]。
\S 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。
\t 匹配一个制表符。等价于 \x09 和 \cI。
\v 匹配一个垂直制表符。等价于 \x0b 和 \cK。
\w 匹配包括下划线的任何单词字符。等价于’[A-Za-z0-9_]’。
\W 匹配任何非单词字符。等价于 ’[^A-Za-z0-9_]’。
\xn 匹配 n,其中 n 为十六进制转义值。十六进制转义值必须为确定的两个数字长。
\num 匹配 num,其中num是一个正整数。对所获取的匹配的引用。
\n 标识一个八进制转义值或一个后向引用。如果 \n 之前至少 n 个获取的子表达式,则 n 为后向引用。否则,如果 n 为八进制数字 (0-7),则 n 为一个八进制转义值。
\nm 标识一个八进制转义值或一个后向引用。如果 \nm 之前至少有is preceded by at least nm 个获取得子表达式,则 nm 为后向引用。如果 \nm 之前至少有 n 个获取,则 n 为一个后跟文字 m 的后向引用。如果前面的条件都不满足,若 n 和 m 均为八进制数字 (0-7),则 \nm 将匹配八进制转义值 nm。
\nml 如果 n 为八进制数字 (0-3),且 m 和 l 均为八进制数字 (0-7),则匹配八进制转义值 nml。
\un 匹配 n,其中 n 是一个用四个十六进制数字表示的Unicode字符。

其它好的文章和自己的一点心得有时间再添加。占位先。。。
posted @ 2007-04-10 11:51 刘明 阅读(367) | 评论 (0) | 编辑 收藏
 
blog名字的由来
博客新建,本来想起个很帅的名字的,但思前想后了半天,也没整出个满意的名字。

因为我个人很喜欢漫画、动画,尤其喜欢《橙路》里的阿圆,因此也就拿“橙路”这个名字来做为我blog的名称了,也希望早日碰到“我的阿圆”,
呵呵。

程序员大多是理性的,也希望大家能多接触一些感性的事情,能把程序开发变成一项艺术的创作。

posted @ 2007-04-09 15:49 刘明 阅读(272) | 评论 (1) | 编辑 收藏
 
一道有趣的小数学题
刚看完《鬼吹灯》,看里面的情节想到个小的数学问题,大家探讨一下。

有N个人,有N颗子弹,只有一颗是真子弹,其它都是假的(也就是N-1个假子弹),每个人依次尝试,如果碰到假子弹则平安,假子弹被取出作废,这个人也不会再次测试,问最后一个人碰到真子弹的几率是多大?

比 如:有5个人,5发子弹(4个假子弹、1个真子弹)。现在进行测试,一个人先测试,自己碰到的是假子弹,取出假子弹,自己退出。这时候还剩下4个人4发子 弹,问到最后一个人碰到真子弹的几率是多少?最后所有人碰到真子弹的几率加在一起为1,毕竟肯定会有一个人碰到真子弹的。

大家可以考虑看看,应该是怎么个算法公式呢?
posted @ 2007-04-05 11:44 刘明 阅读(342) | 评论 (3) | 编辑 收藏
 
 
<2007年4月>
日一二三四五六
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

 导航

  • BlogJava
  • 首页
  • 发新随笔
  • 发新文章
  • 联系
  • 聚合
  • 管理

 统计

  • 随笔: 7
  • 文章: 1
  • 评论: 28
  • 引用: 0

常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论

留言簿(2)

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔档案

  • 2007年5月 (1)
  • 2007年4月 (6)

文章档案

  • 2007年4月 (1)

搜索

  •  

最新评论

  • 1. re: 一道有趣的小数学题
  • 跑项目胖星儿一起icyprehcf哦吃羊肉哦无欧文哟哟如防火墙巧克力
  • --梁辰宇
  • 2. re: 一道有趣的小数学题
  • 好简单,我会!
  • --梁辰宇
  • 3. re: 一道有趣的小数学题
  • 好难,我不会
  • --梁辰宇
  • 4. re: IntelliJ IDEA新版本开发工具信息
  • 评论内容较长,点击标题查看
  • --51src
  • 5. re: 一道有趣的小数学题
  • 哎 N分之1 这也叫有趣?
  • --哎

阅读排行榜

  • 1. 一篇有趣的招聘广告(3121)
  • 2. IntelliJ IDEA新版本开发工具信息(1337)
  • 3. 读取本地文件发现的一点小问题(1024)
  • 4. 正则表达式详细解释(367)
  • 5. 一道有趣的小数学题(342)

评论排行榜

  • 1. 一篇有趣的招聘广告(5)
  • 2. IntelliJ IDEA新版本开发工具信息(5)
  • 3. 读取本地文件发现的一点小问题(3)
  • 4. 一道有趣的小数学题(3)
  • 5. blog名字的由来(1)

Powered by: 博客园
模板提供:沪江博客
Copyright ©2025 刘明