package edu.hebtu.movingcampus.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.util.regex.Pattern; public class StringUtil { public static final String URL_REG_EXPRESSION = "^(https?://)?([a-zA-Z0-9_-]+\\.[a-zA-Z0-9_-]+)+(/*[A-Za-z0-9/\\-_&:?\\+=//.%]*)*"; public static final String EMAIL_REG_EXPRESSION = "\\w+(\\.\\w+)*@\\w+(\\.\\w+)+"; public static boolean isUrl(String s) { if (s == null) { return false; } return Pattern.matches(URL_REG_EXPRESSION, s); } public static boolean isEmail(String s) { if (s == null) { return true; } return Pattern.matches(EMAIL_REG_EXPRESSION, s); } public static boolean isBlank(String s) { if (s == null) { return true; } return Pattern.matches("\\s*", s); } public static String join(String spliter, Object[] arr) { if (arr == null || arr.length == 0) { return ""; } if (spliter == null) { spliter = ""; } StringBuilder builder = new StringBuilder(); for (int i = 0; i < arr.length; i++) { if (i == arr.length - 1) { break; } if (arr[i] == null) { continue; } builder.append(arr[i].toString()); builder.append(spliter); } return builder.toString(); } public static String fromFile(File f) throws IOException { InputStream is = new FileInputStream(f); byte[] bs = new byte[is.available()]; is.read(bs); is.close(); return new String(bs); } public static void toFile(File f, String s) throws IOException { // 只有手机rom有足够的空间才写入本地缓存 if (CommonUtil.enoughSpaceOnPhone(s.getBytes().length)) { FileOutputStream fos = new FileOutputStream(f); fos.write(s.getBytes()); fos.close(); } } }