词频统计(WEB)版
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了词频统计(WEB)版相关的知识,希望对你有一定的参考价值。
需求:
在以前的基础上把程序迁移到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>
页面显示:
后台管理代码:
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; } } }
运行结果:
HTTPS:https://git.coding.net/ziyoujay/cipintongji_WEB.git
SSH:[email protected]:ziyoujay/cipintongji_WEB.git
以上是关于词频统计(WEB)版的主要内容,如果未能解决你的问题,请参考以下文章