java文件过滤代码 java文件过滤器

java FileFilter 过滤只保留文件夹和.xls文件代码如下 , 供参考
import java.io.File;
import java.io.FileFilter;
public class Test {
public static void main(String[] args) {
File file = new File("E:\\");
File[] files = file.listFiles(new FileFilter(){
@Override
public boolean accept(File pathname) {
// 判断文件名是目录 或 .xls 结尾
if (pathname.isDirectory() || pathname.getName().toUpperCase().endsWith(".XLS")) {
return true;
}
return false;
}});
for (File f : files) {
System.out.println(f.getName());
}
}
}
请问这段JAVA过滤器代码要放在哪里执行?看到Servlet,可以明确这是个web项目 。
所以你需要新建一个web工程,然后在web.xml中配置该过滤器 。
java读取txt文件 , 如何过滤掉注释处理的重点就是如何判断和删除两行注释中间的不是以"#"或者"~"开头的注释行,草草写了段代码 , 对于楼主给的那段some.txt能够正常处理
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class DelectComments {
public static void main(String rags[]) {
File f = new File("D:\\Hello.txt");
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader(f));
boolean flag1 = false;// #
boolean flag2 = false;// ~
String content = "";
// last output content
ArrayListString outputContents = new ArrayListString();
// the number of lines that between 2 comments lines start with "#" or "~"
int commentsLineNum = 0;
while ((content = br.readLine()) != null) {
// the line is comments and start with "#"
if (content.startsWith("#")) {
// delete the comments lines between 2 comments lines start with "#"
if (flag1) {
for (int i = 0; icommentsLineNum; i) {
outputContents.remove(outputContents.size() - 1);
}
commentsLineNum = 0;
} else {
flag1 = true;
}
// the line is comments and start with "~"
} else if (content.startsWith("~")) {
// delete the comments lines between 2 comments lines start with "~"
if (flag2) {
for (int i = 0; icommentsLineNum; i) {
outputContents.remove(outputContents.size() - 1);
}
commentsLineNum = 0;
} else {
flag2 = true;
}
} else {
outputContents.add(content);
commentsLineNum;
}
}
// output the text
for (String outputContent : outputContents) {
System.out.println(outputContent);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
但是还有个问题就是该程序没有考虑到如果在正文以后再次出现注释行的情况,如果用本程序处理的话 , 就会错误的把正文也作为注释删除,如果有高人的话还望能够不吝赐教 。
java filter 过滤器中文乱码 怎么解决?。?/h2>1、首先编写一个Java类java文件过滤代码的filter代码 。操作步骤java文件过滤代码:
(1)在myeclipse中新建一个java类java文件过滤代码,
(2)单击“Add”按钮java文件过滤代码,在弹出来的对话框中“选择接口”文本框中输入Filterjava文件过滤代码,
并选择匹配好的类型javax.servlet
(3)单击“OK”按钮返回"New Java Class"对话,然后单击“Finish”按钮,就可以看到创建的过滤器框架:
过滤器类:Encoding.java,代码如下:
package com;
import java.io.IOException;
import javax.servlet.*;
public class Encoding implements Filter {
protected String encoding=null;
protected FilterConfig config;
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if(request.getCharacterEncoding()==null){
//得倒指定的编码
String encode=getEncoding();
if(encode!=null){
//设置request的编码
request.setCharacterEncoding(encode);
response.setCharacterEncoding(encode);
}
}
chain.doFilter(request, response);
}
public void init(FilterConfig filterConfig) throws ServletException {
this.config=filterConfig;//得到web.xml中的配置编码
this.encoding=filterConfig.getInitParameter("Encoding");
}
protected String getEncoding(){
return encoding;
}
}
2、在web.xml文件写入以下代码:
?xml version="1.0" encoding="UTF-8"?
web-app version="2.5"
xmlns=""
xmlns:xsi=""
xsi:schemaLocation="
"
display-name/display-name
filter!-- 控制编码 --
filter-nameEncodingFilter/filter-name
filter-classcom.Encoding/filter-class
init-param!-- 初始化参数 --
param-nameEncoding/param-name
param-valueGB2312/param-value
/init-param
/filter
filter-mapping
filter-nameEncodingFilter/filter-name
url-pattern/*/url-pattern
/filter-mapping
/web-app
java中文件浏览对话框中怎么过滤文件类型JFileChooser chooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter(
"JPGGIF Images", "jpg", "gif");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(parent);
if(returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this file: "
chooser.getSelectedFile().getName());
}
JFileChooser就可以实现文件选择,但是只显示指定的文件类型的过滤类FileNameExtensionFilter只是JDK1.6版本里的,JDK1.4及其以下是没有的 , 如果想在JDK1.4里实现过滤,可以去1.6版本里找到该源码 , 自己编译使用
【java文件过滤代码 java文件过滤器】关于java文件过滤代码和java文件过滤器的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读