「java判断格式」Java数据类型判断
今天给各位分享java判断格式的知识,其中也会对Java数据类型判断进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java判断文件编码格式 怎么判断编码格式
- 2、java中的?判断
- 3、JAVA 判断一个字符串是不是一个合法的日期格式
- 4、java 如何判断字符串编码格式
- 5、java代码怎么判断文件的格式是excel文件
java判断文件编码格式 怎么判断编码格式
UTF-8编码的文本文档,有的带有BOM (Byte Order Mark, 字节序标志),即0xEF, 0xBB, 0xBF,有的没有。Windows下的txt文本编辑器在保存UTF-8格式的文本文档时会自动添加BOM到文件头。在判断这类文档时,可以根据文档的前3个字节来进行判断。然而BOM不是必需的,而且也不是推荐的。对不希望UTF-8文档带有BOM的程序会带来兼容性问题,例如Java编译器在编译带有BOM的UTF-8源文件时就会出错。而且BOM去掉了UTF-8一个期望的特性,即是在文本全部是ASCII字符时UTF-8是和ASCII一致的,即UTF-8向下兼容ASCII。
在具体判断时,如果文档不带有BOM,就无法根据BOM做出判断,而且IsTextUnicode API也无法对UTF-8编码的Unicode字符串做出判断。那在编程判断时就要根据UTF-8字符编码的规律进行判断了。
UTF-8是一种多字节编码的字符集,表示一个Unicode字符时,它可以是1个至多个字节,在表示上有规律:
1字节:0xxxxxxx
2字节:110xxxxx 10xxxxxx
3字节:1110xxxx 10xxxxxx 10xxxxxx
4字节:11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
这样就可以根据上面的特征对字符串进行遍历来判断一个字符串是不是UTF-8编码了。
举例代码:
java.io.File f=new java.io.File("待判定的文本文件名");
try{
java.io.InputStream ios=new java.io.FileInputStream(f);
byte[] b=new byte[3];
ios.read(b);
ios.close();
if(b[0]==-17b[1]==-69b[2]==-65)
System.out.println(f.getName()+"编码为UTF-8");
else System.out.println(f.getName()+"可能是GBK");
}catch(Exception e){
e.printStackTrace();
}
java中的?判断
1.三目运算
格式:
(关系表达式 结果是布尔值) ? 表达式1 : 表达式2;
1
如果前面的关系成立,则返回表达式1的值。
否则,返回表达式2的值。
int a = 20;
int b = 40;
//返回两者中较大的数:
int max = (ab) ? a : b;
System.out.println("较大的数是:"+max);
1
2
3
4
5
6
2.if 判断
1.第一种结构
if(关系表达式:布尔值){
语句体;
}
1
2
3
2.第二种结构
if(关系表达式:布尔){
语句体1;
}else{
语句体2;
}
1
2
3
4
5
3.第三种结构
if(关系表达式1:布尔值){
语句体1;
}else if(关系表达式2:布尔值){
语句体2;
}.......else if(关系表达式N:布尔值){
语句体N;
}else{ //最后一个else 不带条件
语句体N+1;
}
JAVA 判断一个字符串是不是一个合法的日期格式
Java为了支持多语言,没有固定的日期格式。你需要根据自己的需要指定日期格式,然后用DateFormat类或者SimpleDateFormat类来判断是否是正确的日期格式。下面的例子供参考。更详细的内容(比如yyyy,MM,dd各代表什么)可以参考javadoc。
public class DateUtil
{
private static final SimpleDateFormat dateFormat = null;
static
{
// 指定日期格式为四位年/两位月份/两位日期,注意yyyy/MM/dd区分大小写;
dateFormat = new SimpleDateFormat("yyyy/MM/dd");
// 设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期,比如2007/02/29会被接受,并转换成2007/03/01
dateFormat.setLenient(false);
}
public static boolean isValidDate(String s)
{
try
{
dateFormat.parse(s);
return true;
}
catch (Exception e)
{
// 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
return false;
}
}
// 下面这个方法则可以将一个日期按照你指定的格式输出
public static String formatDate(Date d)
{
return dateFormat.format(d);
}
}
java 如何判断字符串编码格式
java可供判断某字符串是什么编码的一行代码
System.out.println("中文");
System.out.println("中文".getBytes());
System.out.println("中文".getBytes("GB2312"));
System.out.println("中文".getBytes("ISO8859_1"));
System.out.println(new String("中文".getBytes()));
System.out.println(new String("中文".getBytes(), "GB2312"));
System.out.println(new String("中文".getBytes(), "ISO8859_1"));
System.out.println(new String("中文".getBytes("GB2312")));
System.out.println(new String("中文".getBytes("GB2312"), "GB2312"));
System.out.println(new String("中文".getBytes("GB2312"), "ISO8859_1"));
System.out.println(new String("中文".getBytes("ISO8859_1")));
System.out.println(new String("中文".getBytes("ISO8859_1"), "GB2312"));
System.out.println(new String("中文".getBytes("ISO8859_1"), "ISO8859_1"));
eg:判断当前字符串的编码格式。
//判断当前字符串的编码格式
if(destination.equals(new String(destination.getBytes("iso8859-1"), "iso8859-1")))
{
destination=new String(destination.getBytes("iso8859-1"),"utf-8");
}
java代码怎么判断文件的格式是excel文件
匹配后缀名。
用
String.endsWith(".xls");
xls
xlsx
xlsm
1.两点需要注意
1.string.spilt("\\.")分割字符串成子字符串数组,以“.”分割,必须写成string.spilt("\\.")的方式,不能写成string.spilt(".")。斜线必须是反斜线且。
2.获取分割后的字符串数组,要获得最后一个item的index ,方式是int suffixIndex = strArray.length -1;
public String getFileType(String fileName) {
String[] strArray = fileName.split("\\.");
int suffixIndex = strArray.length -1;
System.out.println(strArray[suffixIndex]);
return "strArray[suffixIndex]";
}
java判断格式的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于Java数据类型判断、java判断格式的信息别忘了在本站进行查找喔。