導航:首頁 > 編程語言 > java過濾非法字元

java過濾非法字元

發布時間:2022-06-10 03:53:02

java 用poi 操作excel 把裡面的數據取出後過濾掉非法的字元等 ,在放到資料庫中

樓上哥們正解... 幫你再詳細點吧
解析Excle使用POI的話 ,你是直接讀取文件還是做上傳再來,如果上傳就稍微麻煩點,直接讀取比較簡單
解析Exlce的話主要用到的幾個類HSSFWorkbook ,Excle對象
通過他獲取你的sheet ,可以通過制定名字來wb.getShee(名字);
然後通過sheet 獲取行 sheel.getRow(first),通過行再獲取每個單元格HSSFCell
你在獲取每個單元格的時候最好先判斷下是否為空這些,避免空指針
同時POI也提供了 判斷取出來的值是什麼類型的比如字元串這些。
過濾非法字元串這些 你可以通過Pattern.matches(),這個方法來匹配
最後將讀取的excle數據封裝成為集合,批量插入資料庫...
加油把.... 網上有很多這種資料.. ~~

❷ 誰知道在JAVA中怎麼屏蔽非法字元

只能輸入數字:「^[0-9]*$」只能輸入n位的數字:「^\d{n}$」只能輸入至少n位數字:「^\d{n,}$」只能輸入m-n位的數字:「^\d{m,n}$」只能輸入零和非零開頭的數字:「^(0|[1-9][0-9]*)$」只能輸入有兩位小數的正實數:「^[0-9]+(.[0-9]{2})?$」只能輸入有1-3位小數的正實數:「^[0-9]+(.[0-9]{1,3})?$」只能輸入非零的正整數:「^\+?[1-9][0-9]*$」只能輸入非零的負整數:「^\-[1-9][0-9]*$」只能輸入長度為3的字元:「^.{3}$」只能輸入由26個英文字母組成的字元串:「^[A-Za-z]+$」只能輸入由26個大寫英文字母組成的字元串:「^[A-Z]+$」只能輸入由26個小寫英文字母組成的字元串:「^[a-z]+$」只能輸入由數字和26個英文字母組成的字元串:「^[A-Za-z0-9]+$」只能輸入由數字、26個英文字母或者下劃線組成的字元串:「^\w+$」驗證用戶密碼:「^[a-zA-Z]\w{5,17}$」正確格式為:以字母開頭,長度在6-18之間,

❸ 在java中定義char變數出現的非法字元怎麼處理

需要添加拋出聲明,但是可以從鍵盤輸入一個字元,如果輸入多個的話,那麼只會保存第一個字元。使用Scanner 類從鍵盤錄入一個字元,使用String 接收; 然後使用 String 的charAt功能。
char c = new java.util.Scanner(System.in).next().charAt(0);

這算是最常用的了吧,實際上就是輸入字元串後再利用charAt(0)得到
char c = new java.util.Scanner(System.in).next().toCharArray[0];

勉強算得上第二種吧!我以前很常用的。可以用,但是畢竟不好,浪費資源,又沒有第一種簡單。
char c = (char)new BufferedReader(new InputStreamReader(System.in)).read();

這個也可以讀取第一個輸入的字元,不過這應該是在沒有Scanner類的時候使用的,現在使用顯得有點麻煩了。

❹ java過濾非法字元的filter

filter代碼在pujia12345提供的代碼上改的;
jsp頁面的編碼你設成你自己的,我用的是utf-8。
input.jsp輸入後,正常跳轉到handle.jsp,而禁詞已經被過濾。
filter:
package test;

import java.io.*;
import javax.servlet.*;
import java.util.*;

public class MyFilter implements Filter
{
private List<String> unString;

public void init(FilterConfig filterConfig) throws ServletException
{
unString = new ArrayList<String>();
unString.add("日");
}

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException
{
String content = request.getParameter("content");//需要過濾的參數
if(content!=null){
for (int i = 0; i < unString.size(); i++)
{
String strIllegal = unString.get(i);
if (content.indexOf(strIllegal) >= 0)
{
content = content.replaceAll(strIllegal, "");//非法字元替換成空
}
request.setAttribute("content", content);//為request設置屬性保存修改後的值
}
}
chain.doFilter(request, response);
}
public void destroy()
{
//System.out.println("過濾器銷毀");
}
}

//---------------------------//
web.xml:
<filter>
<filter-name>myfilter</filter-name>
<filter-class>test.MyFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>myfilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

//---------------------------//
輸入頁面input.jsp:

<%@page contentType="text/html;charset=utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>input.jsp</title>
</head>

<body>
<form action="handle.jsp" method="post">
<input type="text" name="content" />
<input type="submit" value=" 提交 " />
</form>
</body>
</html>

//---------------------------//
input提交的頁面handle.jsp:
<%@page contentType="text/html;charset=utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> handle.jsp </title>
</head>

<body>
<%
String content = (String)request.getAttribute("content");
out.println(content);
%>
</body>
</html>

❺ java : json 過濾不合法字元的工具包工具類工具

json中沒有自帶的過濾不合法字元的工具類,需要用戶自己編寫。
將源數據中的'、"、\\、空格、換行等都替換成轉義符,這樣你拼接的json數據就是正常的,顯示出來格式和資料庫中的一樣。
function valueReplace(v) {
if (v.indexOf("\"") != -1) {
v = v.toString().replace(new RegExp('(["\"])', 'g'), "\\\"");
}
else if (v.indexOf("\\") != -1)
v = v.toString().replace(new RegExp("([\\\\])", 'g'), "\\\\");
return v;
}

❻ 在JAVA中輸入什麼代碼才能屏蔽非法字元

只能輸入數字:「^[0-9]*$」只能輸入n位的數字:「^\d{n}$」只能輸入至少n位數字:「^\d{n,}$」只能輸入m-n位的數字:「^\d{m,n}$」只能輸入零和非零開頭的數字:「^(0|[1-9][0-9]*)$」只能輸入有兩位小數的正實數:「^[0-9]+(.[0-9]{2})?$」只能輸入有1-3位小數的正實數:「^[0-9]+(.[0-9]{1,3})?$」只能輸入非零的正整數:「^\+?[1-9][0-9]*$」只能輸入非零的負整數:「^\-[1-9][0-9]*$」只能輸入長度為3的字元:「^.{3}$」只能輸入由26個英文字母組成的字元串:「^[A-Za-z]+$」只能輸入由26個大寫英文字母組成的字元串:「^[A-Z]+$」只能輸入由26個小寫英文字母組成的字元串:「^[a-z]+$」只能輸入由數字和26個英文字母組成的字元串:「^[A-Za-z0-9]+$」只能輸入由數字、26個英文字母或者下劃線組成的字元串:「^\w+$」

❼ java如何去掉字元串中的非法字元

也可以循環替換

❽ java代碼怎麼校驗身份證號碼含有非法字元

如果只要判斷有非法的字元(除0-9和Xx外)可用正則表達式publicstaticvoidmain(String[]args){//="2142213weqrwe32";StringregEx="[^0-9Xx]";Patternpat=Pattern.compile(regEx);Matchermat=pat.matcher(s);booleanrs=mat.find();if(rs){System.out.print("有非法字元");}另外,校驗身份證號碼有專門程序的,可直接校驗身份證號是否正確,在自己在網上找下

❾ JAVA特殊字元過濾方法

public static String StringFilter(String str) throws PatternSyntaxException {
// 只允許字母和數字
// String regEx = "[^a-zA-Z0-9]";
// 清除掉所有特殊字元
String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】『;:」「』。,、?]";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(str);
return m.replaceAll("").trim();
}

❿ Java編程運行時出現非法字元怎麼破求大神指點

修改下你.java源碼文件的編碼類型,如果你是用windows記事本寫的,那麼他是ANSI編碼的,改成uttf8或者unicode編碼就好了

閱讀全文

與java過濾非法字元相關的資料

熱點內容
php數組傳遞給js 瀏覽:639
在世紀的轉折點上pdf 瀏覽:856
變頻製冷壓縮機性能實驗 瀏覽:574
印刷哪個app好 瀏覽:366
安卓手機如何查看連接過的wifi密碼 瀏覽:460
chrpythonord 瀏覽:353
android切片 瀏覽:230
前端js調用php 瀏覽:590
文件夾res是什麼 瀏覽:488
linuxput命令 瀏覽:931
智能仿生演算法模擬退火 瀏覽:903
汽車辦解壓能代辦嗎 瀏覽:12
美林程序員 瀏覽:841
安卓如何開網路 瀏覽:730
宿來app什麼時候上線 瀏覽:764
成都python培訓機構好不好 瀏覽:421
mysql查看配置命令 瀏覽:597
v8編譯cmake 瀏覽:965
app品牌起步階段需要什麼營銷 瀏覽:358
壓縮機製冷劑溫度 瀏覽:930