javaÓëc#ͨÐÅÊý¾Ýת»»ÎÊÌâ
/ÓÉÓÚJAVAÓïÑÔµÄÊý¾ÝÀàÐͶ¼ÊÇÓзûºÅÀàÐÍ£¬¶øC# C++Ò»°ãÊý¾ÝÀàÐͶ¼ÊÇ·ÖÓзûºÅºÍÎÞ·ûºÅ,
//Òò´ËÔÚͨÐŹý³ÌÖд«µÝµÄByte[]ÎÞ·¨Ö±
½Óת»»³ÉC#ÐèÒªµÄÀàÐÍ£¬
//ÒÔǰµ¹ÊÇûעÒâÕâЩϸ½Ú£¬ÒòΪһ°ãÓÃÒ»ÖÖÓïÑÔ±à³Ì£¬
//´ó¶¼ÓÐÄÚÖõÄת»»·½·¨¡£¿çÓïÑÔ»·¾³µÄת»»¾ÍµÄ×Ô¼º¶¯
ÊÖÏë°ì·¨ÁË¡£
1¡¢javaµÄByte[]ת»»³Éc#µÄInt32
private int
CoverJavaByteToInt(byte[] bytes){
char[] chars =
Encoding.ASCII.GetChars(bytes);
int r = 0;
r |= (((int)(chars[0]))
& 0xff) << 24;
r |= (((int)(chars[1])) & 0xff)
<< 16;
r |= (((int)(chars[2])) & 0xff) << 8;
r |=
(((int)(chars[3])) & 0xff);
return r;
}
2¡¢javaµÄByte[]ת³Éc#µÄ
unshort
private ushort CoverJavaByteToUnshort(byte[] bytes){
ushort
r = 0;
char[] chars=Encoding.ASCII.GetChars(bytes);
r |=
(ushort)((chars[0] & 0xff) << 8);
r |= (ushort)(chars[1]
& 0xff) ;
return r;
}
´Ë´úÂë»á³öÏÖ´íÎóÔÚijЩÇé¿ö£¬´óÖÂÔÒòÊÇÒòΪת»»charʱֵÔâµ½¸Ä±ä£¬Ó¦¸ÃÊDZíʾ·¶Î§ÎÊÌâµ¼ÖÂ
private ushort
CoverJavaByteToUnshort(byte[] bytes){
ushort r = 0;
r |=
(ushort)((bytes[0] & 0xff) << 8);
r |= (ushort)(bytes[1]
& 0xff);
return r;
}
´Ë´úÂëĿǰ²âÊÔûÎÊÌâÁË£¬Èç¹ûËÓöµ½ÌØÊâÇé¿ö ÇëÓëÎÒÁªÏµ
3¡¢
javaµÄByte[]ת³Éc#µÄstring
£¨×¢Ò⣺ÎÒÕâ¸öº¯ÊýÊǸù¾ÝÎÒ¹¤×÷ÐèҪдµÄÒòΪ¿ÉÄÜ´æÔÚ¶à¸östring»òÆäËûÊý¾ÝÀàÐÍÔÚÕû¸öÊý¾ÝÁ÷
ÖУ¬ÈçÄã½ÓÊÕµÄÊý¾ÝÁ÷¾ÍÊÇ×Ö·û´®£¬ÍêÈ«¿ÉÒÔûÕâôÂé·³£¬Çë×ÔÐÐÐ޸ģ©///
/// ת»»Byte[]µ½String ĬÈϲÉÓÃUTF-8///
/// Êý¾ÝÁ÷µÄBYTEÊý×é/// ×îÖÕת»»½á¹û×Ö·û´®
/// StringµÄÔÚÊý¾ÝÁ÷ÖÐµÄÆðʼλÖÃ
///
ÏÂÒ»¸öÊý¾ÝÀàÐÍÔÚÊý¾ÝÁ÷ÖÐµÄÆðʼλÖÃ
private int CoverJavaByteToString(byte[] bytes,ref
string str,int indexStart){
byte[] uidLen = new byte[2];
Array.Copy(bytes,indexStart, uidLen, 0, 2);
ushort len =
CoverJavaByteToUnshort(uidLen);
str =
Encoding.UTF8.GetString(bytes,2+indexStart, len);
return
str.Length+2+indexStart;
} ......
Ïà¹ØÎĵµ£º
´ó²¿·ÖµÄ½âÊÍÐͽű¾ÓïÑÔ¶¼Ìṩ eval ·½·¨À´Íê³É¶¯Ì¬´úÂëµÄ½âÊÍÖ´ÐУ¬ C# È´²¢²»Ìṩ£¨Ïò Java ѧϰ£©¡£²»¹ýÔÚ .NET Framework Àà¿âÀïÃæÌṩµÄ Microsoft.JScript ÃüÃû¿Õ¼äµ¹Êǰüº¬ÁËÖ§³ÖʹÓÃJScript ÓïÑÔ±àÒëºÍÉú³É´úÂëµÄÀà¡£
ÏÈÉÏ´úÂ룺
¡¡¡¡¸ÃÀàÐèÒªÄãÌí¼Ó¶Ô³ÌÐò¼¯ Microsoft.JScript µÄÒýÓã»Èç¹û°Ñ“current v ......
ÎÒÃÇ¿ÉÒÔʹÓÃXML×÷ΪÊý¾Ý´«ËÍ¡¢¹µÍ¨µÄ¸ñʽ£¬Ajax¿Í»§¶ËÈôÒª·¢ËÍXML£¬»ù±¾ÉϾÍÊǽ«XML×÷Ϊ×Ö·û´®£¬ÔÚPOSTÇëÇóʱ·¢ËÍ£¬ÀýÈ磺
*HelloAjax.js
view plaincopy to clipboardprint?
var xmlHttp;
function createXMLHttpRequest() {
if (window.XMLHttpRequest) {   ......
1.´óβ(big_endian)Сβ(little_endian)µÄÎÊÌâ
»ùÓÚWebµÄ²âÊÔÈí¼þÊÇÓÉC++Êý¾Ý²É¼¯·þÎñÆ÷³ÌÐòºÍ¿Í»§¶ËJavaÏÔʾ³ÌÐòÁ½²¿·Ö¹¹³É£¬Ç°ÕßÓÃC++£¬ºóÕßJavaÓïÑÔ£¬´æÔÚÊý¾ÝÒÆÖ²ÎÊÌâ¡£ÒòΪ
ÔÚ¼ÆËã»úϵͳÖУ¬µ±°üº¬Êý×ֵĶþ½øÖÆÎļþ´ÓÒ»¸ö½á¹¹ÒƵ½ÁíÒ»½á¹¹Ê±£¬¾Í³öÏÖ´óβСβÎÊÌâ¡£²»Í¬CPUÔÚ¶à×Ö½ÚÊý£¨ÈçËÄ×Ö½Úint£©´æ´¢Ê±ÓÐÁ½ÖÖ·½·¨ ......
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;
using System.Xml;
using System.Data;
namespace MyDbTest
{
class Program
{
static void Main(string[] args)
{
SqlConnection thisConnection = new SqlConnection(
@ ......
1.Duplicated Code ´úÂëÖØ¸´¼¸ºõÊÇ×î³£¼ûµÄÒìζÁË¡£ËûÒ²ÊÇRefactoringµÄÖ÷ҪĿ±êÖ®Ò»¡£´úÂëÖØ¸´ÍùÍùÀ´×ÔÓÚcopy-and-pasteµÄ±à³Ì·ç¸ñ¡£ÓëËûÏà¶ÔÓ¦OAOOÊÇÒ»¸öºÃϵͳµÄÖØÒª±êÖ¾¡£ 2.Long method ËüÊÇ´«Í³½á¹¹»¯µÄ“ÒŶ¾”¡£Ò»¸ö·½·¨Ó¦µ±¾ßÓÐ×ÔÎÒ¶ÀÁ¢µÄÒâͼ£¬²»Òª°Ñ¼¸¸öÒâͼ·ÅÔÚÒ»Æð¡£ 3.Large Class ´óÀà¾ÍÊÇÄã°ÑÌ«¶ ......