需求:

   在以前的基础上把程序迁移到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:git@git.coding.net:ziyoujay/cipintongji_WEB.git

词频统计(WEB)版的更多相关文章

  1. java词频统计——web版支持

    需求概要: 1.把程序迁移到web平台,通过用户上传TXT的方式接收文件. 2.用户直接输入要统计的文本,服务器返回结果 3.在页面上给出链接 (如果有封皮.作者.字数.页数等信息更佳)或表格,展示经 ...

  2. C语言实现词频统计——第二版

    原需求 1.读取文件,文件内包可含英文字符,及常见标点,空格级换行符. 2.统计英文单词在本文件的出现次数 3.将统计结果排序 4.显示排序结果 新需求: 1.小文件输入. 为表明程序能跑 2.支持命 ...

  3. 词频统计Web工程

    本次将原本控制台工程迁移到了web工程上.. 需求: 1.把程序迁移到web平台,通过用户上传TXT的方式接收文件: 2.在页面上给出链接 (如果有封皮.作者.字数.页数等信息更佳)或表格,展示经典英 ...

  4. 个人项目----词频统计WEB(部分功能)

    需求分析 1.使用web上传txt文件,对上传的txt进行词频统计. 2.将统计后的结果输出到web页面,力求界面优美. 3.在界面上展示所给url的文章词频统计,力求界面优美. 3.将每个单词同四. ...

  5. Java实现的词频统计——Web迁移

    本次将原本控制台工程迁移到了web工程上,依旧保留原本控制台的版本. 需求: 1.把程序迁移到web平台,通过用户上传TXT的方式接收文件: 2.在页面上给出链接 (如果有封皮.作者.字数.页数等信息 ...

  6. 词频统计-------------web版本

    要求:把程序迁移到web平台,通过用户上传TXT的方式接收文件.建议(但不强制要求)保留并维护Console版本,有利于测试. 在页面上设置上传的控件,然后在servlet中接受,得到的是一个字节流, ...

  7. 词频统计web

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...

  8. python瓦登尔湖词频统计

    #瓦登尔湖词频统计: import string path = 'D:/python3/Walden.txt' with open(path,'r',encoding= 'utf-8') as tex ...

  9. java词频统计——改进后的单元测试

    测试项目 博客文章地址:[http://www.cnblogs.com/jx8zjs/p/5862269.html] 工程地址:https://coding.net/u/jx8zjs/p/wordCo ...

  10. JAVA面向对象编程课程设计——web版斗地主

    一.团队课程设计博客链接 JAVA面向对象编程课程设计--网络版单机斗地主 二.个人负责模块或任务说明 实体类的设计 斗地主规则的实现 人机自动出牌的算法 实现数据库的DAO模式 三.自己的代码提交记 ...

随机推荐

  1. 20155238 2016-2017-2 《Java程序设计》第二周学习总结

    教材学习内容总结 java基本类型:整数,字节,浮点数,字符 //"单行批注" */"单行批注" 变量 "驼峰式命命法" int age0f ...

  2. 【ruby题目】以|为分割点,将arr转换为二维数组

    #以|为分割点,将arr转换为二维数组 arr = ['] tmp = [] tmp2 = [] for x in arr tmp << x if x != '|' tmp2.push A ...

  3. P4546 [THUWC2017]在美妙的数学王国中畅游

    如果只有第3个操作,那么这就是个sd题,随便lct搞搞就过去了 然后就是一个神仙东西 taylor公式 我不会,看gsy博客https://www.cnblogs.com/zhoushuyu/p/81 ...

  4. jquery validate 使用示例

    var el = { $jsFrom: $('.js-form'), }; // 检测用户名是否存在 jQuery.validator.addMethod("isexist", f ...

  5. 2018年美国大学生数学建模竞赛(MCM/ICM) 比赛心得

    话不多说,题目先上: 这是我们这次选择的题目,说说建模的那些事! 美赛的时间和国赛挑战杯时间略有不同,貌似多的一天是为了让我们对文章进行一个翻译吧QAQ 建议参加美赛的同学可以参照此计划进行 Day0 ...

  6. TensorFlow Python2.7环境下的源码编译(三)编译

    一.源代码编译 这里要为仅支持 CPU 的 TensorFlow 构建一个 pip 软件包,需要调用以下命令: $ bazel build --cxxopt="-D_GLIBCXX_USE_ ...

  7. netbeans 类重复 解决

    Help -> About -> Cache directory 记录Cache directory目录 删除该目录下的所有文件 重启

  8. 分析(function(window, undefined) {})(window)

    有的时候,我们会在JS框架中看到这行 (function(window, undefined) {})(window) ,它是做什么用的,我们来分析下它 首先这就是一个匿名函数,立即执行它 (func ...

  9. [C++]值传递和引用传递

    概念 在定义函数时函数括号中的变量名成为形式参数,简称形参或虚拟参数: 在主调函数中调用一个函数时,该函数括号中的参数名称为实际参数,简称实参,实参可以是常量.变量或表达式. 注意: C语言中实参和形 ...

  10. arp与rarp