|
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2008-05-13
应该是大学期间代码写得太少了,代码看多了,写多了自然就不会写出这样子代码。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-13
这帖子也最好删了,没什么存在的意义.睡觉了,明天起又开始忙碌了.
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-13
嗯,是应该删掉
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-14
狂-_-b 汗~~~,逻辑混乱。。。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-14
...仿佛看到了C语言...
两位也别这么争来争去的..累得慌 |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-14
我想问下
字符串连接不用类似 "select * from a where asdf='"+something+"'"; 用什么? 用String.Format吗? 我平时就老写++++类似的东西,请教高人怎么写? |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-14
terranhao 写道 我想问下
字符串连接不用类似 "select * from a where asdf='"+something+"'"; 用什么? 用String.Format吗? 我平时就老写++++类似的东西,请教高人怎么写? 从效率上来讲,当然是用StringBuffer.append() |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-14
mylifestyle1225 写道 String sql = "";
if (sql != null) 哈哈哈哈哈..... 我也07年7月份毕业,工作也就3个月,但也不至于这么糊涂.另外,小晒一下刚写完代码. public Map<Integer, String> getFields(String message) throws UnsupportedEncodingException { // TODO Auto-generated method stub BitSet bitMap=new BitSet(); boolean isExtend=false; Map<Integer,String> fields=new HashMap<Integer,String>();//用来存放报文标识类型(key=0),位图(key=1),2-128个域(key=2--key=128) byte[] all = message.getBytes("ISO-8859-1");//把字符串转成byte[] byte[] messageType=new byte[4];//存放报文类型标识符的byte[] for(int i=0;i<4;i++){ messageType[i]=all[i]; } fields.put(0, new String(messageType,"ISO-8859-1"));//放入Map<Integer,String> fields if(all[4]<0){//如果有扩展位图 isExtend=true; } //初始化基本位图,根据检索基本位图的8个字节的二进制的结果(第4-11字节),把bitMap的32位到95位设置成true(1)或者false(0), int count=4; while(count<12&&count>3){ byte each=all[count]; count++; for(int i=0;i<8;i++){ if(getValue(each,i)){//如果返回true,即二进制上是1,把该bit位设置成true,默认为false bitMap.set((count-1)*8+i,true); } } } //如果有扩展位图,初始化扩展位图,根据检索扩展位图的8个字节的二进制的结果(第12-19字节),bitMap的96-153,设置成true(1)或者false(0) if(isExtend){ while(count>11&&count<20){ byte each=all[count]; count++; for(int i=0;i<8;i++){ if(getValue(each,i)){ bitMap.set((count-1)*8+i,true);//如果返回true,即二进制上是1,把该bit位设置成true,默认为false } } } } /*测试位图 for(int z=32;z<bitMap.size();z++){ if(bitMap.get(z)){ System.out.println(z); } }*/ System.out.println("位图初始化完成"); //初始化位图完成,开始读取数据,i=1表示从bitMap的第2个位置开始循环读取。 if(isExtend){ int currentByte=20; for(int i=32;i<161;i++){ currentByte=putFields(fields,currentByte,bitMap,i,all); fields.put(1, "1"); } }else{ int currentByte=12; for(int i=32;i<161;i++){ currentByte=putFields(fields,currentByte,bitMap,i,all); fields.put(1, "0"); } } return fields; } //检索一个byte二进制中对应位置上的值的方法,返回false表示"0",true表示"1"; 参数int index取0-7,a取[-128到127] public boolean getValue(byte a,int index){ //把一个byte转换成类似"01000000"的形式,并用一个String的值表示 String a_binary; if(a>-1&&a<128){ int i=a|256; String is=Integer.toString(i, 2); a_binary=is.substring(1, 9); }else{ int i=(-a)|256; String is=Integer.toString(i, 2); a_binary="1"+is.substring(2, 9); } if(a_binary.substring(index,index+1).equals("0")){ return false; }else{ return true; } } 这样的代码也好意思拿出来晒晒,哎,世风日下呀。 |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-14
回LS的,拿出来晒就是为了请老手指点的.
有事说事,没事少插嘴,不说话没人把你当哑巴.每个人都有菜鸟的过程,你也不是这么过来的么?你是一个新人的时候有胆量晒代码让人指点吗? 典型的中国人的挖苦讽刺,自持清高的心理,不知道你自己达到了什么境界. 是不是这么说一句,很有满足感?那就成就你的满足感吧.但是我到了你这个年龄,肯定能超过你这类货色. |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-14
能满足客户功能的代码就是好代码
|
|
| 返回顶楼 | |






