Import java. util .*; Import java. Text .*; Import java. Lang .*; Import sun. Io .*; Public class dealstring { Public long makeid (int uid) { // 5 Users UID ++ = 10000;
// Time occupies 9 digits: seconds. Remove the first digit. Java. util. Date time = new java. util. Date (); Long second = time. gettime ()/1000; String STR = Second + ""; STR = Str. substring (1, str. Length ()); // Group Five STR = uid + STR + 10000;
Return long. parselong (STR ); } /** Convert null ""*/ Public String tostring (string Str) { If (STR = NULL) STR = ""; If (Str. Equals ("null") STR = ""; STR = Str. Trim (); Return STR; } /** Conversion encoding */ Public String togbk (string Str) { Try { If (STR = NULL) STR = ""; Else STR = new string (Str. getbytes ("ISO-8859-1"), "GBK "); } Catch (exception e) {system. Out. println ("dealstring: togbk (string): Error:" + E );} Return STR; } Public String tomkbyte (INT size) { If (size> (1024*1024) {return (float) size/(1024*1024) + ""). substring () + "MB ";} Else if (size> 1024) {return (float) size/1024 + ""). substring () + "kb ";} Else return size + "B "; } /** Utf8 */ Public String toutf8string (string SRC) { Byte [] B = SRC. getbytes (); Char [] C = new char [B. Length]; For (INT I = 0; I <B. length; I ++) { C [I] = (char) (B [I] & 0x00ff ); } Return new string (C ); } Public String toascii (string Str) { Try { If (STR = NULL) STR = ""; Else STR = new string (Str. getbytes ("GBK"), "ISO-8859-1 "); } Catch (exception e) {system. Out. println ("dealstring: togbk (string): Error:" + E );} Return STR; } /** Split string */ Public String [] splitstr (string STR, char C) { STR + = C; Int n = 0; For (INT I = 0; I <Str. Length (); I ++) { If (Str. charat (I) = C) n ++; } String out [] = new string [N]; For (INT I = 0; I <n; I ++) { Int Index = Str. indexof (C ); Out [I] = Str. substring (0, index ); STR = Str. substring (index + 1, str. Length ()); } Return out; } /** Obtain the system time */ Public String getdatetime () { Java. Text. simpledateformat F = new java. Text. simpledateformat ("yyyy-mm-dd hh: mm: SS "); String time = f. Format (New java. util. Date ()); Return time; } /** Replace string */ Public String Replace (string source, string oldstring, string newstring) { Stringbuffer output = new stringbuffer (); Int lengthofsource = source. Length (); // source String Length Int lengthofold = oldstring. Length (); // The length of the old string. Int posstart = 0; // start position search Int Pos; // search for the location of the old string While (Pos = source. indexof (oldstring, posstart)> = 0 ){ Output. append (source. substring (posstart, POS )); Output. append (newstring ); Posstart = POS + lengthofold; } If (posstart <lengthofsource ){ Output. append (source. substring (posstart )); } Return output. tostring (); } /** Get the difference between the days of two dates */ Public long getdaysinterval (date D1, date D2) { Return (d2.gettime ()-d1.gettime ()/86400000; } /** Format the string to a fixed length */ Public String tolengthstr (string instr, int Len) { Int n = instr. Length (); For (INT I = 0; I <(LEN-N); I ++) { Instr = "" + instr; } Return instr; } /** Format the string to a fixed length (with spaces on the right )*/ Public String tolengthstrright (string instr, int Len) { Int n = instr. Length (); For (INT I = 0; I <(LEN-N); I ++) { Instr = instr + ""; } Return instr; } /* Convert ASCII to string */ Public String asciitochinesestring (string S) { Char [] orig = S. tochararray (); Byte [] DEST = new byte [orig. Length]; For (INT I = 0; I <orig. length; I ++) Dest [I] = (byte) (orig [I] & 0xff ); Try { Bytetocharconverter tochar = bytetocharconverter. getconverter ("gb2312 "); Return new string (tochar. convertall (DEST )); } Catch (exception E) { System. Out. println ("dealstring: asciitochinesestring (string) error during running; error:" + E ); Return S; } } /** Convert string to ASCII */ Public String chinesestringtoascii (string S) { Try { Chartobyteconverter tobyte = chartobyteconverter. getconverter ("gb2312 "); Byte [] orig = tobyte. convertall (S. tochararray ()); Char [] DEST = new char [orig. Length]; For (INT I = 0; I <orig. length; I ++) Dest [I] = (char) (orig [I] & 0xff ); Return new string (DEST ); } Catch (exception E) { System. Out. println ("dealstring: chinesestringtoascii (string):" + E ); Return S; } } /** Source code for converting Unicode to GB */ Public String unicodetogb (string S) { Stringbuffer sb = new stringbuffer (); Boolean escape = false; For (INT I = 0; I <S. Length (); I ++) { Char c = S. charat (I ); Switch (c) { Case '//': Escape = true; break; Case 'U ': Case 'U ': If (escape) { Try { SB. append (char) integer. parseint (S. substring (I + 1, I + 5), 16 )); Escape = false; } Catch (numberformatexception E) {System. Out. println ("dealstring: unicodetogb (string) runtime error:" + E + "and throw a new illegalargumentexception exception ."); Throw new illegalargumentexception (); } I + = 4; } Else { SB. append (C ); } Break; Default: SB. append (c); break; } } Return sb. tostring (); } /* Remove duplicates in Str */ Public String strdistinct (string Str) { String [] strarr = Str. Split (","); String straim = ","; For (INT I = 0; I <strarr. length; I ++) { If (strarr [I]. Equals ("")) Continue; If (straim. indexof ("," + strarr [I] + ",") =-1) { Straim = straim + strarr [I] + ","; } } If (! Straim. Equals (",")) Straim = straim. substring (1, straim. Length ()-1 ); Else straim = ""; Return straim; } /** Convert the character to ASCII */ Public int toascii (char C) { Int I = C; Return I; } /** Get the length of characters */ Public int bytelength (string Str) { Return (Str. getbytes (). Length ); } /** Obtain a substring of the specified length from the beginning */ Public String strbytecopy (string STR, int nend) { If (nend = 0) Return ""; Byte [] bytestr = Str. getbytes (); Int K = bytestr. length; String strsub = new string (bytestr, 0, nend <k? Nend: K ); If (strsub. Length () = 0) strsub = new string (bytestr, 0, nEnd-1 ); Return strsub; } Public Boolean strmatch (string motherstr, string childstr) { Boolean matched = false; Int mlength = motherstr. Length (); Int clength = childstr. Length (); Int starwith; If (mlength> = clength ){ Starwith = mlength-clength; For (INT I = 0; I <= starwith; I ++ ){ Matched = motherstr. startswith (childstr, I ); If (matched) break; } } Return matched; } /* // Convert the string to UTF-8 encoded Public static string toutf8string (string s ){ Stringbuffer sb = new stringbuffer (); For (INT I = 0; I <S. Length (); I ++ ){ Char c = S. charat (I ); If (C> = 0 & C <= 255 ){ SB. append (C ); } Else { Byte [] B; Try { B = character. tostring (c). getbytes ("UTF-8 "); } Catch (exception ex ){ System. Out. println (Ex ); B = new byte [0]; } For (Int J = 0; j <B. length; j ++ ){ Int K = B [J]; If (k <0) K + = 256; SB. append ("%" + integer. tohexstring (k ). Touppercase ()); } } } Return sb. tostring (); } */ Public vector simplify (string [] Str ){ Vector vect = new vector (); For (INT I = 0; I <Str. length; I ++) Vect. Add (STR [I]); For (INT I = 0; I <vect. Size (); I ++ ){ String [] S1 = (string) vect. Get (I). Split ("_"); For (Int J = I + 1; j <vect. Size ();){ Boolean out = true; String [] S2 = (string) vect. Get (j). Split ("_"); For (int K = 0; k <s1.length; k ++ ){ If (! S1 [K]. Equals (s2 [k]) &! S1 [K]. Equals ("0 ")){ Out = false; Break; } } If (out) Vect. Remove (j ); Else J ++; } } Return vect; } Public vector simplify (vector vstr ){ Vector vect = new vector (); For (INT I = 0; I <vstr. Size (); I ++) Vect. Add (vstr. Get (I )); For (INT I = 0; I <vect. Size (); I ++ ){ String [] S1 = (string) vect. Get (I). Split ("_"); For (Int J = I + 1; j <vect. Size ();){ Boolean out = true; String [] S2 = (string) vect. Get (j). Split ("_"); For (int K = 0; k <s1.length; k ++ ){ If (! S1 [K]. Equals (s2 [k]) &! S1 [K]. Equals ("0 ")){ Out = false; Break; } } If (out) Vect. Remove (j ); Else J ++; } } Return vect; } Public static void main (string ARGs []) throws exception { Dealstring MB = new dealstring (); System. Out. println ("begin/R/n/R/N "); System. Out. println (mb. makeid (2345 )); System. Out. Print ("/rggggggggggggg "); System. Out. println ("/rend "); } }; |