词频统计(WEB)版

时间:2021-07-25 11:51:12

需求:

   在以前的基础上把程序迁移到web平台,通过用户上传TXT的方式接收文件。

前端页面代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<h4>词频统计器
</h4>
<div>
<p>
请选择文件:<asp:FileUpload ID="FileUpload1" runat="server" />
</p>
<p>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" style="height: 21px; width: 62px" Text="查询" />
</p>
</div>
<div> <asp:TextBox ID="TextBox1" runat="server" Height="300px" TextMode="MultiLine" Width="326px" Enabled="False"></asp:TextBox> </div>
</form>
</body>
</html>

  页面显示:

词频统计(WEB)版

后台管理代码:

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Text;
using System.Collections.Generic;
using System.IO; public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
} protected void Button1_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFiles)
{
int n = 0;
string strfile = FileUpload1.PostedFile.FileName;
string strout;
StreamReader sr = File.OpenText(strfile);
String input = sr.ReadToEnd();
sr.Close();
//Response.Write(input);
char[] text = input.ToCharArray();
Dictionary<string, int> map = new Dictionary<string, int>();
for (int i = 0; i < text.Length; i++)
{
string s = "";
while (i < text.Length && ((text[i] >= 'a' && text[i] <= 'z') || (text[i] >= 'A' && text[i] <= 'Z') || text[i] == '-'))
{
if (text[i] >= 'A' && text[i] <= 'Z')
s += (text[i] + 32);
else
s += text[i];
i++;
}
if (!map.ContainsKey(s))
{
if (s == "") continue;
n++;
map.Add(s, 1);
}
else
{
map[s]++;
}
}
strout = "";
strout = "单次总数为:" + n.ToString() + "\n";
List<KeyValuePair<string, int>> myList = new List<KeyValuePair<string, int>>(map);
myList.Sort(delegate (KeyValuePair<string, int> s1, KeyValuePair<string, int> s2)
{
return s2.Value.CompareTo(s1.Value);
});
map.Clear(); foreach (KeyValuePair<string, int> pair in myList)
{
strout = strout + pair.Key + " " + pair.Value + "\n";
//dic.Add(pair.Key, pair.Value); } TextBox1.Text = strout; }
}
}

  运行结果:

词频统计(WEB)版

HTTPS:https://git.coding.net/ziyoujay/cipintongji_WEB.git

SSH:git@git.coding.net:ziyoujay/cipintongji_WEB.git