您的位置:首页 > 其它

过滤非法字符(脏字)的类

2010-06-03 17:02 288 查看
第一次写博客,纯属于记录工作中的点点滴滴,有什么不好的地方还请大家指出,谢谢!

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Web;
using System.Collections;

namespace ******.WebHelper
{
public class FilterText
{
string FilePath = string.Empty;
public FilterText()
{
FilePath = HttpContext.Current.Server.MapPath("~/Config/ValidDict.txt");//脏字文件的路径
}
/// <summary>
/// 读文件的内容
/// </summary>
/// <param name="url">物理路径</param>
/// <returns></returns>
public string ReadFilterText()
{
FileStream fsReadDefaultTemplate = new FileStream(FilePath, FileMode.Open, FileAccess.Read);
StreamReader srReadDefaultTemplate = new StreamReader(fsReadDefaultTemplate, System.Text.Encoding.UTF8);
string content = srReadDefaultTemplate.ReadToEnd();
fsReadDefaultTemplate.Close();
srReadDefaultTemplate.Close();
return content;
}

/// <summary>
/// 写非法关键字到文件
/// </summary>
/// <param name="url">物理路径</param>
/// <param name="content">内容</param>
/// <returns></returns>
public void WriteFilterText(string content)
{
FileStream fs = new FileStream(FilePath, FileMode.Create, FileAccess.Write);
StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.UTF8);
sw.Write(content);
sw.Close();
fs.Close();
}
/// <summary>
/// 过滤非法字符,替换为*号
/// </summary>
/// <param name="TempStr">需要过滤的字符串</param>
/// <returns></returns>
public string FilterInfo(string TempStr)
{
if (File.Exists(FilePath))
{
StreamReader objReader = new StreamReader(FilePath, System.Text.Encoding.UTF8);
string sLine = "";
ArrayList arrText = new ArrayList();
while (sLine != null)
{
sLine = objReader.ReadLine();
if (sLine != null)
arrText.Add(sLine);
}
objReader.Close();
foreach (string sOutput in arrText)
{
string[] strArr = sOutput.Split(new char[] { (char)10, (char)13 }, StringSplitOptions.RemoveEmptyEntries);

for (int i = 0; i < strArr.Length; i++)
{
string temp = "";
for (int j = 0; j < strArr[i].Length; j++)
{ temp += "*"; }
TempStr = TempStr.Replace(strArr[i], temp);
}
}
}
return TempStr;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: