国产日韩精品视频_2020久久国产最新免费观看_国内久久久久影院精品_日本一区二区视频在线

我愛學習網-上傳
當前位置: 主頁 > 文庫 > VB.NET >

vb.net排序文件名算法

時間:2018-11-24 22:12來源:我愛學習網 作者:布丁點兒 點擊:

  輸入 : a1,a2,a10,a001

  我們知道,如果按照字符串比較,結果應該是 a001,a1,a10,a2,但我們期望的結果應該是a001,a1,a2,a10.

  自己寫了一個算法,請參考,或者有更好的算法,請賜教

  /*

  Return Value Description

  < 0  arg1 less than arg2

  0  arg1 equivalent to arg2

  > 0  arg1 greater than arg2

  */

  int compare(const void* arg1,const void* arg2)

  {

  if (NULL==arg1||NULL==arg2)//address of item

  return 0;

  LPSTR lpText1 = *( TCHAR** )arg1; //content of item

  LPSTR lpText2 = *( TCHAR** )arg2; //content of item

  if (NULL==lpText1||NULL==lpText2)

  return 0;

  int nText1Len = _tcslen(lpText1);

  int nText2Len = _tcslen(lpText2);

  int nText1IndexHandled = 0;

  int nText2IndexHandled = 0;

  int nRet = 0;

  for (;;)

  {

  if (nText1IndexHandled==nText1Len||nText2IndexHandled==nText2Len) //don't compare complete since all are same, "ab","abc"

  {

  TCHAR chOffset1 = nText1IndexHandled<nText1Len?lpText1[nText1IndexHandled]:0;

  TCHAR chOffset2 = nText2IndexHandled<nText2Len?lpText2[nText2IndexHandled]:0;

  nRet = (int)((WORD)chOffset1-(WORD)chOffset2);

  break;

  }

  TCHAR ch1 = *(lpText1+nText1IndexHandled);

  TCHAR ch2 = *(lpText2+nText2IndexHandled);

  if (isdigit(ch1)&&isdigit(ch2)) // if digit, change to number and compare

  {

  TCHAR* lpNum1 = new TCHAR[nText1Len];

  TCHAR* lpNum2 = new TCHAR[nText2Len];

  if (NULL==lpNum1||NULL==lpNum2)

  return 0;

  memset(lpNum1,0,nText1Len*sizeof(TCHAR));

  memset(lpNum2,0,nText2Len*sizeof(TCHAR));

  extractnumber(lpText1,nText1Len,nText1IndexHandled,lpNum1);

  extractnumber(lpText2,nText2Len,nText2IndexHandled,lpNum2);

  nRet = comparenumber(lpNum1,lpNum2);

  delete[] lpNum1;

  delete[] lpNum2;

  }

  else

  {

  nRet = (int)((WORD)ch1-(WORD)ch2);

  nText1IndexHandled++;

  nText2IndexHandled++;

  }

  if (nRet!=0)

  break;

  }

  return nRet;

  }

  TCHAR* extractnumber(TCHAR* lpBuf,int nLen,int& nIndexBegin,TCHAR* lpNumber)

  {

  if (NULL==lpBuf||NULL==lpNumber)

  return lpNumber;

  for (int i=nIndexBegin,nIndex=0;i<nLen;++i,++nIndexBegin)

  {

  TCHAR ch = *(lpBuf+i);

  if (!isdigit(ch))

  break;

  lpNumber[nIndex++]=ch;

  }

  return lpNumber;

  }

  int comparenumber(TCHAR* lpNumber1,TCHAR* lpNumber2)

  {

  if (NULL==lpNumber1||NULL==lpNumber2)

  return 0;

  int nNum1Len = _tcslen(lpNumber1);

  int nNum2Len = _tcslen(lpNumber2);

  int nMaxLen = max(nNum1Len,nNum2Len);

  TCHAR* lpFormatNum1 = new TCHAR[nMaxLen+1];

  TCHAR* lpFormatNum2 = new TCHAR[nMaxLen+1];

  if (NULL==lpFormatNum1||NULL==lpFormatNum2)

  return 0;

  memset(lpFormatNum1,_T('0'),nMaxLen*sizeof(TCHAR));

  memset(lpFormatNum2,_T('0'),nMaxLen*sizeof(TCHAR));

  lpFormatNum1[nMaxLen]=0;

  lpFormatNum2[nMaxLen]=0;

  int nPos = 0, nRet = 0;

  int nIndex = nMaxLen-1;

  for (nPos=nNum1Len-1;nPos>=0;--nPos)

  lpFormatNum1[nIndex--]=lpNumber1[nPos];

  nIndex = nMaxLen-1;

  for (nPos=nNum2Len-1;nPos>=0;--nPos)

  lpFormatNum2[nIndex--]=lpNumber2[nPos];

  for (nPos=0;nPos<nMaxLen;++nPos)

  {

  nRet = lpFormatNum1[nPos]-lpFormatNum2[nPos];

  if (nRet!=0)

  break;

  }

  delete[] lpFormatNum1;

  delete[] lpFormatNum2;

  return nRet;

  }

------分隔線----------------------------
    ?分享到??
看看啦
国产日韩精品视频_2020久久国产最新免费观看_国内久久久久影院精品_日本一区二区视频在线

午夜电影亚洲| 日韩亚洲欧美成人| 红桃视频国产一区| 国产精品视频一区二区三区 | 怡红院av一区二区三区| 欧美日韩精品一区二区在线播放| 免费一级欧美片在线播放| 久久精品国产免费观看| 久久国产精品99国产| 欧美一区午夜精品| 久久福利一区| 麻豆精品精华液| 欧美日韩不卡合集视频| 欧美日韩国产片| 国产精品福利av| 国产亚洲一区精品| 在线观看日韩一区| 日韩午夜视频在线观看| 亚洲一区二区毛片| 欧美在线视频一区| 欧美阿v一级看视频| 欧美日韩二区三区| 国产精品揄拍500视频| 国产亚洲一区二区精品| 伊人夜夜躁av伊人久久| 最新中文字幕亚洲| 亚洲欧美日韩在线一区| 中文日韩欧美| 久久国产精品毛片| 欧美精品三级日韩久久| 欧美日韩国产欧| 国产日本欧美视频| 亚洲青色在线| 亚洲欧美日韩中文视频| 久久久综合视频| 欧美日韩精品综合| 国产欧美一区二区三区另类精品| 亚洲黄色在线| 亚洲欧美一区二区原创| 久久久综合网站| 久久久五月天| 国产精品极品美女粉嫩高清在线 | 一区视频在线播放| 在线视频一区观看| 久久先锋资源| 国产一区二区三区最好精华液| 正在播放日韩| 欧美日韩免费观看一区三区| 在线看片第一页欧美| 久久精品理论片| 国产亚洲成年网址在线观看| 亚洲午夜激情网页| 欧美三级在线| 一本色道久久综合| 欧美伦理影院| 日韩视频永久免费| 欧美美女bb生活片| 99精品视频免费观看| 欧美激情综合五月色丁香| 亚洲经典视频在线观看| 欧美成人亚洲成人| 亚洲国产免费看| 欧美激情精品久久久久| 亚洲激情视频网站| 欧美极品一区| 在线一区二区三区四区五区| 欧美日精品一区视频| 中文欧美在线视频| 国产精品激情| 久久国产免费看| 在线免费高清一区二区三区| 久久婷婷丁香| 99精品国产福利在线观看免费| 欧美日韩综合在线| 欧美一区二区三区免费大片| 国产婷婷精品| 欧美v日韩v国产v| 99这里只有精品| 国产精品h在线观看| 午夜在线视频一区二区区别 | 99在线|亚洲一区二区| 国产精品成人观看视频国产奇米| 亚洲欧美一区二区激情| 国语自产在线不卡| 欧美成人中文字幕| 亚洲在线一区二区| 在线观看成人一级片| 欧美日韩国产影片| 久久精品免费观看| 亚洲精品久久久久| 国产亚洲毛片| 欧美日韩高清在线一区| 香蕉久久一区二区不卡无毒影院 | 噜噜噜91成人网| 亚洲性xxxx| 亚洲国产欧美一区| 国产欧美日韩综合一区在线播放 | 亚洲视频一区在线观看| 国产日韩欧美在线观看| 欧美精品乱人伦久久久久久 | 日韩一区二区福利| 国产色综合网| 欧美日韩一二区| 久久免费视频在线| 亚洲欧美日韩国产中文| 亚洲国产va精品久久久不卡综合| 国产精品激情av在线播放| 免费日韩成人| 性欧美18~19sex高清播放| 亚洲美女免费视频| 在线日本成人| 国产亚洲欧美日韩在线一区| 欧美日韩三级| 欧美粗暴jizz性欧美20| 久久精品国产亚洲一区二区三区 | 欧美sm视频| 久久精精品视频| 欧美一区二区免费| 亚洲制服av| 亚洲丝袜av一区| 亚洲图片欧洲图片av| 亚洲精品字幕| 亚洲精品乱码久久久久久按摩观| 狠狠爱www人成狠狠爱综合网| 国产精品日韩一区二区三区| 欧美极品影院| 欧美日韩国产区一| 欧美国产综合一区二区| 嫩草成人www欧美| 欧美成人在线影院| 欧美精品www在线观看| 欧美国产一区二区三区激情无套| 免费观看在线综合色| 久久婷婷国产综合精品青草| 久久久精品一区二区三区| 久久精品综合一区| 久热精品视频在线| 久久视频免费观看| 免费观看一区| 欧美精品 国产精品| 欧美日韩亚洲一区二区三区在线观看 | …久久精品99久久香蕉国产| 国外精品视频| 在线欧美一区| 一区二区三区久久久| 亚洲欧美日本精品| 久久se精品一区精品二区| 久久精品国产99国产精品澳门 | 久久成人一区| 久久人91精品久久久久久不卡| 久久久人人人| 欧美黑人在线播放| 国产精品久久77777| 国产欧美欧美| 亚洲国产精品美女| 在线视频欧美日韩| 欧美一级二区| 你懂的国产精品永久在线| 欧美激情综合色| 国产精品久久久久久一区二区三区 | 亚洲激情网站免费观看| 亚洲乱码国产乱码精品精可以看 | 中文国产成人精品| 久久精品国产77777蜜臀| 欧美高清不卡在线| 国产精品视频免费一区| 精品动漫一区| 亚洲夜晚福利在线观看| 久久久久欧美精品| 欧美日韩精品在线观看| 国产欧美日韩三级| 亚洲激情综合| 久久aⅴ乱码一区二区三区| 欧美二区在线观看| 国产亚洲一级| 亚洲伦伦在线| 久久久人成影片一区二区三区观看 | 国产亚洲成av人片在线观看桃| 亚洲精品久久久久久久久久久久久| 亚洲在线播放| 欧美激情欧美狂野欧美精品| 国产精品毛片高清在线完整版| 亚洲高清久久| 久久国产精品久久国产精品| 欧美日韩美女| 亚洲精品国产视频| 久久国产精品第一页| 国产精品啊啊啊| 日韩午夜电影av| 免费成人小视频| 韩国v欧美v日本v亚洲v| 亚洲综合色婷婷| 欧美午夜精品理论片a级大开眼界| 伊人久久婷婷| 久久国产视频网| 国产精品区二区三区日本| 亚洲精品免费在线观看| 免费美女久久99| 激情综合自拍| 久久综合电影|