<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="width=device-wiedth,initial-scale=1.0" />
    <title>Bodor</title>
    <link href="/Css/common.css" rel="stylesheet" />
</head>
<body style="background-color:gray">
    <form id="form1" enctype="multipart/form-data">
        <input type="button" value="开始" id="btnStart" />
        <input type="button" value="关闭" id="btnEnd" />
        <script src="/Scripts/jquery-1.8.2.min.js"></script>
        <script src="/Scripts/common.js"></script>
    </form>
</body>
</html>
<script type="text/javascript">
    $(function () {
        var a = $(window).height();
        $("#form1").height(a);
  
        //点击开始
        $("#btnStart").click(function () {
            $.ajax({
                type: "post",
                url: "../StartHandler.ashx",
                dataType: "json",
                data: { type: "1" },
                cache: false,
                async: false,
                complete: function () {
                },
                success: function (data) {
                    if (data) {
                        $(this).css({ "background": "green" });
                        $(this).siblings("input").css({ "background": "red" });
                    }
                }
            });
               
        });
        $("#btnEnd").click(function () {
           
            $.ajax({
                type: "post",
                url: "../StartHandler.ashx",
                dataType: "text",
                data: {type:"0"},
                cache: false,
                async: false,
                complete: function () {
                },
                success: function (data) {
                  
                    if (data) {
                        $(this).css({ "background": "green" })
                        $(this).siblings("input").css({ "background": "red" });
                    }
                }
            });
        });
    });
</script>
body{
    margin:0;
}
#form1{
    width:100%;
    height:100%;
    overflow:hidden;
}
#btnStart,#btnEnd{
    font-size: 8vw;
    font-weight: bold;
    color: #fff;
    border: 0;
    background: red;
    border-radius: 100%;
    width: 40vw;
    height: 40vw;
    display:block;
    margin:0 auto;
    outline:none;
    margin-top:20vw;
}
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.SessionState;
namespace WebAppText
{
    /// <summary>
    /// StartHandler 的摘要说明
    /// </summary>
    public class StartHandler : IHttpHandler, IRequiresSessionState
    {
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            string p = "Text\\log.txt";
            string path = urlConvertorLocal(p);
            //MyWriteNoAppend(path, "1");
            string type = context.Request["type"];
            switch (type)
            {
                case "1"://开始
                    {
                        context.Response.Write(MyWriteNoAppend(path, "1"));
                        break;
                    }
                case "0": // 关闭
                    {
                        context.Response.Write(MyWriteNoAppend(path, "0"));
                        break;
                    }
                default:
                    break;
            }
        }
        /// <summary>
        /// 不追加写入
        /// </summary>
        /// <param name="path"></param>
        /// <param name="content"></param>
        public bool MyWriteNoAppend(string path, string content)
        {
            bool isok = true;
            using (FileStream fs = new FileStream(path, FileMode.Create))
            {
                using (StreamWriter sw = new StreamWriter(fs))
                {
                    //开始写入
                    sw.Write(content);
                    // 清空缓冲区
                    sw.Flush();
                    isok = true;
                }
            }
            return  isok;
        }
        /// <summary>  
        /// 相对路径转绝对路径  
        /// </summary>  
        /// <param name="strUrl"></param>  
        /// <returns></returns>  
        public static string urlConvertorLocal(string strUrl)
        {
            string tmpRootDir = HttpContext.Current.Server.MapPath(System.Web.HttpContext.Current.Request.ApplicationPath.ToString());//获取程序根目录  
            string urlPath = tmpRootDir + strUrl.Replace(@"/", @"/"); //转换成绝对路径  
            return urlPath;
        }
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}

C# 读写text 详细讲解的更多相关文章

  1. [iOS]数据库第三方框架FMDB详细讲解

    [iOS]数据库第三方框架FMDB详细讲解 初识FMDB iOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较麻烦.于是,就出现了一系列将SQLite API进行封 ...

  2. node+vue进阶【课程学习系统项目实战详细讲解】打通前后端全栈开发(1):创建项目,完成登录功能

    第一章 建议学习时间8小时·分两次学习      总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章]) 视频教程地 ...

  3. Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解

    前言 大家好,给大家带来Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解的概述,希望你们喜欢 Activity是什么 作为一个Activ ...

  4. 第九节:详细讲解Java中的泛型,多线程,网络编程

    前言 大家好,给大家带来详细讲解Java中的泛型,多线程,网络编程的概述,希望你们喜欢 泛型 泛型格式:ArrayList list= new ArrayList(); ArrayList list= ...

  5. Hibernate中所有包作用详细讲解

    http://liyanblog.cn/articles/2012/09/17/1347848802900.html Hibernate一共包括了23个jar包,令人眼花缭乱.本文将详细讲解Hiber ...

  6. Iframe 用法的详细讲解

    1转自:https://blog.csdn.net/judyge/article/details/51786064 zIframe 用法的详细讲解 把iframe解释成“浏览器中的浏览器“很是恰当 & ...

  7. Nginx基础详细讲解

    Nginx基础详细讲解 链接:https://pan.baidu.com/s/1xB20bnuanh0Avs4kwRpSXQ 提取码:migq 复制这段内容后打开百度网盘手机App,操作更方便哦 1. ...

  8. vue-cli 目录结构详细讲解

    https://juejin.im/post/5c3599386fb9a049db7351a8 vue-cli 目录结构详细讲解 目录 结构预览 ├─build // 保存一些webpack的初始化配 ...

  9. MySQL锁详细讲解

    本文章向大家介绍MySQL锁详细讲解,包括数据库锁基本知识.表锁.表读锁.表写锁.行锁.MVCC.事务的隔离级别.悲观锁.乐观锁.间隙锁GAP.死锁等等,需要的朋友可以参考一下   锁的相关知识又跟存 ...

随机推荐

  1. Intersection of Two Linked Lists(链表)

    Write a program to find the node at which the intersection of two singly linked lists begins. For ex ...

  2. Spring Data JPA 入门篇

    Spring Data JPA是什么 它是Spring基于ORM框架(如hibernate,Mybatis等).JPA规范(Java Persistence API)封装的一套 JPA应用框架,可使开 ...

  3. how to read openstack code: action extension

    之前我们看过了core plugin, service plugin 还有resource extension. resource extension的作用是定义新的资源.而我们说过还有两种exten ...

  4. 百度统计的JS脚本原理解析

    一句话:在你的网站上加载百度统计的脚本,这个脚本会收集你的本地信息,然后发送给百度统计网站 https://blog.csdn.net/iqzq123/article/details/8877645 ...

  5. 新手玩个人server(阿里云)续二

    小二班一番厮杀:那英四强诞生:大家闺秀,小家碧玉.窈窕淑女,妍姿俊俏 .不解释! ?不行! 陈冰,李嘉格,刘明湘.张碧晨.大多数的时候,仅仅要脸好看,一切都那么自热而然的顺理成章. 尽管网上骂声四起, ...

  6. 【Nginx】http模块的数据结构

    定义fttp模块方式很简单,比如:ngx_module_t ngx_http_mytest_module; 其中,ngx_module_t是一个Nginx模块的数据结构. typedef struct ...

  7. The 2014 ACM-ICPC Asia Mudanjiang Regional Contest 【部分题解】

    2014牡丹江亚洲区域赛邀请赛 B题:图论题目 题解:这里 K题:想法题 分析:两种变化.加入和交换.首先:星号是n的话最少须要的数字是n+1,那么能够首先推断数字够不够,不够的话如今最前面添数字,假 ...

  8. python05-09

    一.lambda表达式 def f1(): return 123 f2 = lambda : 123 def f3 = (a1,a2): return a1+a2 f4 = lambda a1,a2 ...

  9. Zookeeper 3.4 官方文档翻译

    说明 个人英语水平非常一般,理解可能有偏差,假设有翻译不恰当之处,请看官指点. 1.简单介绍 分布式系统就像动物园.当中每台server就像一仅仅动物,Zookeeper就像动物园管理员,协调.服务于 ...

  10. Android网络编程(三)Volley使用方法全解析

    相关文章 Android网络编程(一)HTTP协议原理 Android网络编程(二)HttpClient与HttpURLConnection 前言 Volley想必许多人都用过,为了建立网络编程的知识 ...