亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gfstring.java

?? 基于java語言的分詞系統
?? JAVA
?? 第 1 頁 / 共 4 頁
字號:

	/**
	 * 在指定字符串插入到源字符串的指定位置
	 * 
	 * @param src
	 *            源字符串
	 * @param insertStr
	 *            要插入的字符串
	 * @param index
	 *            要插入的位置
	 * @return 插入指定的字符之后的字符串
	 */
	public static String insert(String src, String insertStr, int index) {
		String result = src;

		if (src != null && insertStr != null) {
			String temp = null;

			if (index < 0) {
				if (index * -1 > src.length())
					result = insertStr + src;
				else {
					temp = src.substring(src.length() + index + 1);
					result = src.substring(0, src.length() + index + 1) + insertStr + temp;
				}
			} else if (index >= src.length())
				result = src + insertStr;
			else {
				temp = src.substring(index);
				result = src.substring(0, index) + insertStr + temp;
			}
		} else if (src == null && insertStr != null)
			result = insertStr;
		return result;

	}

	/**
	 * 把相臨的兩個字符對換,字符串長度為奇數時最后加“F”
	 * 
	 * @param src
	 * @return
	 */
	public static String interChange(String src) {
		String result = null;

		if (src != null) {
			if (src.length() % 2 != 0)
				src += "F";
			src += "0";
			result = "";
			for (int i = 0; i < src.length() - 2; i += 2) {
				result += src.substring(i + 1, i + 2);
				result += src.substring(i, i + 1);
			}
		}

		return result;
	}

	/**
	 * 把數組按指定的編碼方式轉化成字符串
	 * 
	 * @param b
	 *            源數組
	 * @param encoding
	 *            編碼方式
	 * @return
	 */
	public static String bytes2str(byte[] b, String encoding) {
		String result = null;
		int actualLen = 0;
		byte[] ab;

		if (b != null && b.length > 0) {
			for (int i = 0; i < b.length; i++) {
				if (b[i] == 0)
					break;
				actualLen++;
			}
			ab = GFCommon.bytesCopy(b, 0, actualLen);
			try {
				result = new String(ab, encoding);
			} catch (UnsupportedEncodingException e) {
				e.printStackTrace();
			}

		}
		return result;
	}

	/**
	 * 把一個字符串按指定的長度分割
	 * 
	 * @param intervalLen
	 *            間隔長度
	 * @return
	 */
	public static String[] split(String src, int intervalLen) {
		String[] result = null;
		int len = 0;

		if (src != null && intervalLen > 0) {
			len = src.length() / intervalLen;

			if (src.length() % intervalLen != 0)
				len++;

			result = new String[len];

			for (int i = 0, j = 0; i < len - 1; i++, j += intervalLen)
				result[i] = src.substring(j, j + intervalLen);
			result[len - 1] = src.substring((len - 1) * intervalLen);
		}

		return result;
	}

	/**
	 * 把字節數組轉化成十六進制的字符串
	 * 
	 * @param b
	 * @return
	 */
	public static String bytes2hexstr(byte[] b) {
		return bytes2hexstr(b, false);
	}

	/**
	 * 把字節數組轉化成十六進制的字符串
	 * <p>
	 * 
	 * @param b
	 * @param highBitFirst
	 *            true:高位優先,即輸出的十六進制字符串是從Byte數組的最大下標開始的
	 *            false:低們優先,即輸出的十六進制字符串是從Byte數組的最小下標0開始的
	 * @return
	 */
	public static String bytes2hexstr(byte[] b, boolean highBitFirst) {
		String result = null;

		if (b != null && b.length > 0) {
			if (highBitFirst) {
				for (int i = b.length - 1; i >= 0; i--) {
					String hex = GFString.byte2hex(b[i]);
					if (result == null)
						result = hex;
					else
						result += hex;
				}
				result = result.toUpperCase();
			} else {
				for (int i = 0; i < b.length; i++) {
					String hex = GFString.byte2hex(b[i]);
					if (result == null)
						result = hex;
					else
						result += hex;
				}
				result = result.toUpperCase();
			}
		}
		return result;
	}

	/**
	 * 把字節數組轉化成十六進制的字符串
	 * 
	 * @param b
	 * @return
	 */
	public static String bytes2hexstr(byte[] b, int len) {
		String result = null;

		if (b != null && b.length > 0 && len <= b.length) {
			for (int i = 0; i < len; i++) {
				String hex = GFString.byte2hex(b[i]);
				if (result == null)
					result = hex;
				else
					result += hex;
			}

			result = result.toUpperCase();
		}
		return result;
	}

	/**
	 * 把十六進制字符串轉化成字節數組 如果長度不是偶數的話,前面加“0”
	 * 
	 * @param hexstr
	 * @return
	 */
	public static byte[] hexstr2bytes(String hexstr) {
		byte[] b = null;
		int len = 0;

		if (hexstr != null) {

			if (hexstr.length() % 2 != 0)
				hexstr = "0" + hexstr;
			len = hexstr.length() / 2;
			b = new byte[len];

			String temp = hexstr + "0";
			for (int i = 0, j = 0; i < temp.length() - 2; i += 2, j++) {
				b[j] = GFString.hex2byte(temp.substring(i, i + 2));

			}
		}
		return b;
	}

	public static int hexstr2int(String hex) {
		if (hex != null && hex.length() <= 8) {
			hex = hex.toUpperCase();
			for (int i = 0; i < hex.length(); i++) {
				int value = hex.charAt(i);
				if (value < 48 || (value > 57 && value < 65) || value > 70)
					return 0;
			}

			byte[] b = hexstr2bytes(hex);
			return GFCommon.bytes2int(b);

		}
		return 0;
	}

	public static String getChineseString(byte[] bArray, String charsetName) {
		String ch = null;
		if (charsetName != null) {

			try {
				ch = new String(bArray, charsetName);
			} catch (UnsupportedEncodingException e) {
				e.printStackTrace();
			}
		}

		return ch;

	}

	public static String bytes2str(byte[] b) {
		String result = null;
		int actualLen = 0;

		if (b != null && b.length > 0) {
			for (int i = 0; i < b.length; i++) {
				if (b[i] == 0)
					break;
				actualLen++;
			}
			byte[] b2 = GFCommon.bytesCopy(b, 0, actualLen);
			if (b2 != null && b2.length > 0)
				result = new String(b2);
		}
		return result;
	}

	/**
	 * 把整數轉換成指定長度的字符串 如果指定長度小于整數的字符串長度,則只取前面LEN個字符。 如果LEN小0,則返回整數的字符串表示型式
	 * 
	 * @param value
	 * @param len
	 * @return
	 */
	public static String int2str(int value, int len) {
		String result = "" + value;
		int l = result.length();

		if (len >= 0) {
			if (l <= len) {
				for (int i = 0; i < len - l; i++)
					result = "0" + result;
			} else {
				result = result.substring(0, len);
			}
		}

		return result;
	}

	/**
	 * 把十六進制數轉化成字節
	 * 
	 * @param hex
	 * @return
	 */
	public static byte hex2byte(String hex) {
		byte b = 0;
		int value = 0;

		if (hex != null && hex.length() <= 2) {
			hex = hex.toUpperCase();
			if (hex.length() == 0)
				return 0;
			else if (hex.length() >= 1) {
				value = hex.charAt(0);
				if (value < 48 || (value > 57 && value < 65) || value > 70)
					return 0;

				if (hex.length() == 2) {
					value = hex.charAt(1);
					if (value < 48 || (value > 57 && value < 65) || value > 70)
						return 0;
				}
			}

			try {
				b = (byte) Integer.parseInt(hex, 16);
			} catch (NumberFormatException e) {
				e.printStackTrace();
			}
		}
		return b;
	}

	/**
	 * 把字節轉換成十六進制字符串,固定為兩個字符長度
	 * 
	 * @param b
	 * @return
	 */
	public static String byte2hex(byte b) {
		String result = null;

		result = Integer.toHexString((b >> 4) & 0x0f);
		result += Integer.toHexString(b & 0xf);
		return result.toUpperCase();
	}

	/**
	 * 用UTF-16BE的編碼方式把含有全角編碼的字符串轉成半角編碼的字符串
	 * <p>
	 * 比如把“漢##012012YY”轉成“漢##012012YY”
	 * <p>
	 * 對全角的空格處理還有問題
	 * 
	 * @param str
	 * @return
	 */
	public static String quan2ban(String str) {
		String result = null;

		if (str != null) {
			try {
				byte[] uniBytes = str.getBytes("utf-16be");
				byte[] b = new byte[uniBytes.length];
				for (int i = 0; i < b.length; i++) {
					if (uniBytes[i] == -1) {
						b[i] = 0;
						if (i + 1 < uniBytes.length)
							b[++i] = (byte) (uniBytes[i] + 0x20);

					} else
						b[i] = uniBytes[i];
				}

				result = new String(b, "utf-16be");
			} catch (UnsupportedEncodingException e) {

				e.printStackTrace();
			}
		}
		return result;
	}

	/**
	 * 用UTF-16BE的編碼方式把含有半角的字符串轉成全角字符串
	 * 
	 * @param str
	 * @return
	 */
	public static String ban2quan(String str) {
		String result = null;

		if (str != null) {
			try {
				byte[] uniBytes = str.getBytes("utf-16be");
				byte[] b = new byte[uniBytes.length];
				for (int i = 0; i < b.length; i++) {
					if (uniBytes[i] == 0) {
						b[i] = -1;
						if (i + 1 < uniBytes.length)
							b[++i] = (byte) (uniBytes[i] - 0x20);

					} else
						b[i] = uniBytes[i];
				}
				result = new String(b, "utf-16be");
			} catch (UnsupportedEncodingException e) {

				e.printStackTrace();
			}
		}
		return result;
	}

	/**
	 * 用GBK編碼進行全角轉半角
	 * 
	 * @param str
	 * @return
	 */
	public static String quan2banGBK(String str) {
		String result = null;

		if (str != null) {
			try {
				int j = 0;
				byte[] uniBytes = str.getBytes("GBK");
				byte[] b = new byte[uniBytes.length];
				for (int i = 0; i < b.length; i++) {
					if (uniBytes[i] == (byte) 0xA3) {
						if (i + 1 < uniBytes.length)
							b[j] = (byte) (uniBytes[++i] - 0x80);
					} else {
						b[j] = uniBytes[i];
						if (uniBytes[i] < 0 && i + 1 < b.length)
							b[++j] = uniBytes[++i];

					}
					j++;
				}
				result = new String(b, 0, j, "GBK");
			} catch (UnsupportedEncodingException e) {
				e.printStackTrace();
			}
		}
		return result;
	}

	// CDA3 D6B9 20 BABA 23 A3A3 303132 A3B0A3B1A3B259A3D939D3AC39A3D9

	/**
	 * 用GBK編碼進行半角轉全角
	 * <p>
	 * 從每個字節判起,如果一個字節的值不大于0X7F,則它是Ascii碼的字符。進入下一個判斷。
	 * <p>
	 * 如果一個字節的值大于0X81,且緊跟著它的下一個字節的值在0x40--0xFE之間,則是漢字或全角字符
	 * 
	 * @param str
	 * @return
	 */
	public static String ban2quanGBK(String str) {
		String result = null;

		if (str != null) {
			try {
				int j = 0;
				byte[] uniBytes = str.getBytes("GBK");
				byte[] b = new byte[uniBytes.length * 2];
				for (int i = 0; i < uniBytes.length; i++) {
					if (uniBytes[i] >= 0) {
						b[j] = (byte) 0xA3;
						if (j + 1 < b.length)
							b[++j] = (byte) (uniBytes[i] + 0x80);

					} else {
						b[j] = uniBytes[i];
						if (i + 1 < uniBytes.length && j + 1 < b.length)
							b[++j] = uniBytes[++i];
					}

					j++;
				}
				result = new String(b, 0, j, "GBK");
			} catch (UnsupportedEncodingException e) {

				e.printStackTrace();
			}
		}
		return result;
	}

	/**
	 * 去掉字符串中的空白符
	 * 
	 * @param s
	 * @return
	 */
	public static String removeSpace(String s) {
		String rs = null;
		String s1 = null;

		if (s != null) {
			s += " ";
			StringBuffer sb = new StringBuffer();
			for (int i = 0; i < s.length(); i++) {
				s1 = s.substring(i, i + 1);
				if (!s1.equals(" "))
					sb.append(s1);
			}

			rs = sb.toString();
		}
		return rs;
	}

	/**
	 * 對字符串中的空格進行格式化,去掉開頭和最后的空格,把字符之間的空格縮減為1個.
	 * <p>
	 * 比如:<空格><空格>我是一個人<空格><空格><空格>中國人<空格>大學生<空格><空格>
	 * <p>
	 * 結果應該為:我是一個人<空格>中國人<空格>大學生
	 * 
	 * @param src
	 * @return
	 */
	public static String formatSpace(String src) {
		String result = null;

		if (src != null) {
			result = "";
			String[] ss = src.split(" ");
			for (int i = 0; i < ss.length; i++) {
				if (ss[i] != null && ss[i].length() > 0) {
					result += ss[i] + " ";
				}
			}

			if (result.length() > 0 && result.substring(result.length() - 1).equals(" "))
				result = result.substring(0, result.length() - 1);
		}

		return result;
	}

	/**
	 * 7-BIT編碼 把ASCII碼值最高位為0的字符串進行壓縮轉換成8位二進制表示的字符串
	 * 
	 * @param src
	 * @return
	 */
	public static String encode7bit(String src) {
		String result = null;
		String hex = null;
		byte value;

		if (src != null && src.length() == src.getBytes().length) {
			result = "";
			byte left = 0;
			byte[] b = src.getBytes();
			for (int i = 0, j = 0; i < b.length; i++) {
				j = i & 7;
				if (j == 0)
					left = b[i];
				else {
					value = (byte) ((b[i] << (8 - j)) | left);
					left = (byte) (b[i] >> j);
					hex = GFString.byte2hex((byte) value);
					result += hex;
					if (i == b.length - 1)
						result += GFString.byte2hex(left);
				}
			}

			result = result.toUpperCase();
		}
		return result;
	}

	/**
	 * 對7-BIT編碼進行解碼
	 * 
	 * @param src
	 *            十六進制的字符串,且為偶數個
	 * @return 源字符串
	 */
	public static String decode7bit(String src) {
		String result = null;
		int[] b;
		String temp = null;
		byte srcAscii;
		byte left = 0;

		if (src != null && src.length() % 2 == 0) {
			result = "";
			b = new int[src.length() / 2];

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产乱淫av一区二区三区| 久久久久国色av免费看影院| 国产成人av电影在线播放| 一区二区视频免费在线观看| 亚洲影院久久精品| 精品福利二区三区| 韩国欧美国产一区| 欧美浪妇xxxx高跟鞋交| 丁香婷婷综合激情五月色| 成人国产一区二区三区精品| 午夜欧美在线一二页| 久久综合九色综合97_久久久| 国产凹凸在线观看一区二区| 日本强好片久久久久久aaa| 亚洲国产日韩一区二区| 日韩精品一区国产麻豆| 亚洲va欧美va人人爽午夜| 成人黄色av电影| 国产亚洲欧美一级| 日韩精品一区二区三区四区视频| 成人永久aaa| 成人免费一区二区三区视频| 成人自拍视频在线| 亚洲一区二区免费视频| 国产一区二区精品久久99| 男人的j进女人的j一区| 欧美国产日产图区| 亚洲第一av色| 久久午夜羞羞影院免费观看| 中文字幕巨乱亚洲| 中文字幕在线观看一区二区| 久久蜜桃香蕉精品一区二区三区| 国产一区二区不卡在线| 亚洲成人av在线电影| 天天av天天翘天天综合网色鬼国产 | 男人的j进女人的j一区| 成人av在线资源| 国产精品麻豆视频| 欧美在线综合视频| 欧美午夜精品一区二区三区| 久久久久久久电影| 午夜欧美电影在线观看| 欧美日韩一区二区三区在线| 亚洲最新在线观看| 久久久久久免费网| 欧美日韩一区二区在线观看| 国产精品成人一区二区三区夜夜夜| 制服.丝袜.亚洲.另类.中文| 欧美久久久久久久久久| 日韩经典中文字幕一区| 欧美中文字幕一二三区视频| 在线综合+亚洲+欧美中文字幕| 日本高清不卡一区| 亚洲午夜在线视频| 麻豆一区二区99久久久久| 4438x亚洲最大成人网| 国产精品一区在线| 夜夜爽夜夜爽精品视频| 亚洲日本va午夜在线电影| 奇米精品一区二区三区四区| 久久99精品国产91久久来源| 久久久777精品电影网影网| 美女在线视频一区| 久久亚洲一区二区三区明星换脸 | 欧美激情资源网| 亚洲高清视频的网址| 亚洲超碰精品一区二区| 亚洲免费在线观看| 国产成人精品亚洲777人妖| 91麻豆国产福利精品| 成人av网址在线| 精品国产一区二区三区av性色| 99久久er热在这里只有精品66| 91精品综合久久久久久| 精品日韩欧美在线| 99精品国产视频| 蜜桃av一区二区在线观看 | 亚洲午夜精品久久久久久久久| 日韩午夜在线影院| 一本大道久久精品懂色aⅴ| 另类成人小视频在线| 日韩精品中文字幕在线不卡尤物| 精品在线播放午夜| 日产精品久久久久久久性色| 综合激情网...| 粉嫩绯色av一区二区在线观看| 日韩一级黄色片| 亚洲国产综合91精品麻豆| 日韩高清不卡在线| 日韩视频免费观看高清完整版| 蜜臀va亚洲va欧美va天堂| 欧美变态tickle挠乳网站| 国产一区二区三区在线看麻豆| 国产欧美视频在线观看| eeuss鲁片一区二区三区在线观看| 国产精品久久久久久久午夜片| 午夜精品福利久久久| 中文字幕中文乱码欧美一区二区| 日韩一级免费观看| 国产一区二区三区在线观看免费 | 亚洲成人免费电影| 亚洲综合视频在线观看| 麻豆视频一区二区| 色综合久久久久综合99| 欧美国产视频在线| 日本电影亚洲天堂一区| 成人理论电影网| 国产精品亚洲一区二区三区在线| 2019国产精品| 日本麻豆一区二区三区视频| 色乱码一区二区三区88| 精品一区二区三区在线视频| 中文子幕无线码一区tr| 国产一区二区三区在线观看免费 | 久久久久久97三级| 欧美日韩你懂得| 国产精品每日更新| 成人丝袜视频网| 日韩经典中文字幕一区| 18涩涩午夜精品.www| 欧美一区二区播放| 国产久卡久卡久卡久卡视频精品| 亚洲视频小说图片| 欧美xxxxx牲另类人与| 欧洲一区在线观看| av成人免费在线观看| 久国产精品韩国三级视频| 国产免费观看久久| 91伊人久久大香线蕉| 欧美日韩一区中文字幕| 国产麻豆成人传媒免费观看| 99久久精品情趣| 99精品国产热久久91蜜凸| 性久久久久久久久| 91免费视频大全| 久久人人爽人人爽| 日产国产高清一区二区三区| 婷婷开心激情综合| 91麻豆高清视频| 成人一区二区在线观看| 一区二区三区日本| 亚洲国产三级在线| 国产高清不卡一区| 国产日韩精品一区二区三区 | 日韩女优制服丝袜电影| 人人超碰91尤物精品国产| 日本一区二区三区久久久久久久久不 | 在线观看成人小视频| 色哦色哦哦色天天综合| 777色狠狠一区二区三区| 久久免费精品国产久精品久久久久| 久久9热精品视频| 日韩制服丝袜av| 亚洲国产精品久久久男人的天堂| 最新国产成人在线观看| 亚洲国产精品黑人久久久| 欧美国产日韩在线观看| 欧美激情一区在线| 欧美福利一区二区| 夜夜精品浪潮av一区二区三区| 中文文精品字幕一区二区| 中文字幕第一区综合| 亚洲日本欧美天堂| 亚洲与欧洲av电影| 免费人成精品欧美精品| 裸体在线国模精品偷拍| 国产一区二区美女诱惑| 成人性生交大片免费看视频在线| 岛国一区二区三区| av成人免费在线观看| 欧美日韩一区二区三区在线| 日韩免费性生活视频播放| 久久久久久免费网| 亚洲婷婷综合久久一本伊一区| 亚洲一区二区三区三| 青青草国产精品亚洲专区无| 国产一区二区精品在线观看| 91在线一区二区| 7777精品伊人久久久大香线蕉最新版| 日韩精品一区二区三区中文精品 | 成人免费av资源| 在线观看亚洲精品| 日韩一区二区精品在线观看| 国产日韩三级在线| 亚洲国产美女搞黄色| 精品一区二区三区香蕉蜜桃| 99麻豆久久久国产精品免费优播| 欧美色图在线观看| 久久久99免费| 亚洲成人www| 国产一区二区三区四区五区美女| 不卡的av网站| 欧美一区二区高清| 中文一区在线播放| 亚洲一线二线三线久久久| 国产精品自产自拍| 欧美在线播放高清精品| 久久亚洲精品国产精品紫薇| 亚洲国产视频直播| 国产一区二区在线免费观看|