fileinfo

文件上传(插件版)和下载

假装没事ソ 提交于 2020-10-31 08:06:14
这个方法可以上传图片,文档,视频,在方法里面进行了处理。 源码地址: https://github.com/SeaLee02/FunctionModule UploadFiles/WebDemo/UpControl 文件夹下就是源码 优点:无刷新页面可以上传你的文件,速度快。 缺点:需要花时间去探索下。如果你能够理解这个方法,并掌握,能够根据需求自己更改,那就看不出有什么缺点。 跟分页一样,如果你掌握,每个项目都可以用到。 这个方法的上传是不用通过表单提交的,是利用插件来上传文件 我们的显示效果: 我们点击浏览就可以选择文件,选择完成后就会上传,这个过程不会刷新页面,如果文本框中出现了路径证明上传成功,失败就弹出提示。 我们既然把文件已经上传成功了,最右边这个按钮是干嘛的呢? 它可以来保存我们的数据到数据库中。 这样会有一个问题,如果文件过大,是不让上传的。 我们可以改一下配置文件 <system.web> <compilation debug= " true " targetFramework= " 4.5.2 " /> <httpRuntime executionTimeout= " 3600 " maxRequestLength= " 1048576 " requestValidationMode= " 2.0 " /> <!--<httpRuntime

C# CSV文件读写

我与影子孤独终老i 提交于 2020-10-31 04:03:52
public class CSVFileHelper { /// <summary> /// 将DataTable中数据写入到CSV文件中 /// </summary> /// <param name="dt">提供保存数据的DataTable</param> /// <param name="fileName">CSV的文件路径</param> public static void SaveCSV(DataTable dt, string fullPath) { FileInfo fi = new FileInfo(fullPath); if (!fi.Directory.Exists) { fi.Directory.Create(); } FileStream fs = new FileStream(fullPath, System.IO.FileMode.Create, System.IO.FileAccess.Write); //StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.Default); StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.UTF8); string data = ""; //写出列名称 for (int i =

mysql数据库将查询的多条结果的某些字段合并为一个字段处理

非 Y 不嫁゛ 提交于 2020-10-22 04:19:51
在使用mysql数据库做一些业务时,比如将一条记录对应的多条详情数据记录归并为该条记录的某一个字段时,可以使用mysql的concat_ws和group_concat方法来进行处理: 使用 concat_ws 方法将详情数据的一条记录的多个字段先拼接合并为一个字段,然后使用 group_concat 将多条详情数据合并处理的字段拼接合并为一个字段。示例如下: SELECT GROUP_CONCAT (tmp.fileInfo) AS fileInfos FROM ( SELECT CONCAT_WS ( ' - ' , file_name , file_url ) AS fileInfo FROM clientlogdetail WHERE serial_no = 11 ) tmp; 以上sql是使用CONCAT_WS方法将clientlogdetail表中的file_name和file_url字段通过分割符-拼接合并为一个字段,之后使用GROUP_CONCAT方法将前面拼接的结果继续拼接合并为一个字段。效果如下: 详情记录字段值: 详情记录字段合并结果: 所有详情记录结果合并结果: group_concat还可以设置拼接前缀和后缀符,如group_concat("", 字段名,"'")是以单引号将结果组合进行拼接。 来源: oschina 链接: https://my

c#中@标志的作用 C#通过序列化实现深表复制 细说并发编程-TPL 大数据量下DataTable To List效率对比 【转载】C#工具类:实现文件操作File的工具类 异步多线程 Asyn...

≡放荡痞女 提交于 2020-10-10 00:27:59
c#中@标志的作用 参考微软官方文档-特殊字符@,地址 https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/tokens/verbatim 1、在变量名前加@,可以告诉编译器,@后的就是变量名。主要用于变量名和C#关键字重复时使用。 string[] @for = { "John", "James", "Joan", "Jamie" }; for (int ctr = 0; ctr < @for.Length; ctr++) { Console.WriteLine($"Here is your gift, {@for[ctr]}!"); } // The example displays the following output: // Here is your gift, John! // Here is your gift, James! // Here is your gift, Joan! // Here is your gift, Jamie! 2、在字符串前加@,字符串中的转义字符串将不再转义。例外:""仍将转义为",{{和}}仍将转义为{和}。在同时使用字符串内插和逐字字符串时,$要在@的前面 string filename1 = @"c:\documents\files\u0066

基于 ONNX 在 ML.NET 中使用 Pytorch 训练的垃圾分类模型

对着背影说爱祢 提交于 2020-08-19 04:26:08
ML.NET 在经典机器学习范畴内,对分类、回归、异常检测等问题开发模型已经有非常棒的表现了,我之前的 文章 都有过介绍。当然我们希望在更高层次的领域加以使用,例如计算机视觉、自然语言处理和信号处理等等领域。 图像识别是计算机视觉的一类分支,AI研发者们较为熟悉的是使用TensorFlow、Pytorch、Keras、MXNET等框架来训练深度神经网络模型,其中会涉及到CNN(卷积神经网络)、DNN(深度神经网络)的相关算法。 ML.NET 在较早期的版本是无法支持这类研究的,可喜的是最新的版本不但能很好地集成 TensorFlow 的模型做 迁移学习 ,还可以直接导入 DNN 常见 预编译模型 :AlexNet、ResNet18、ResNet50、ResNet101 实现对图像的分类、识别等。 我特别想推荐的是,ML.NET 最新版本对 ONNX 的支持也是非常强劲,通过 ONNX 可以把众多其他优秀深度学习框架的模型引入到 .NET Core 运行时中,极大地扩充了 .NET 应用在智能认知服务的丰富程度。在 Microsoft Docs 中已经提供了一个基于 ONNX 使用 Tiny YOLOv2 做对象检测的例子。为了展现 ML.NET 在其他框架上的通用性,本文将介绍使用 Pytorch 训练的垃圾分类的模型,基于 ONNX 导入到 ML.NET 中完成预测。

Go的50坑:新Golang开发者要注意的陷阱、技巧和常见错误[2]

与世无争的帅哥 提交于 2020-08-19 03:19:16
Golang作为一个略古怪而新的语言,有自己一套特色和哲学。从其他语言转来的开发者在刚接触到的时候往往大吃苦头,我也不例外。这篇文章很细致地介绍了Golang的一些常见坑点,读完全篇中枪好多次。故将其转载。由于文章很长,分为上下两部分,第一部分记录初级篇,第二部分记录进阶和高级篇:此为第二部分 目录 初级篇 开大括号不能放在单独的一行 未使用的变量 未使用的Imports 简式的变量声明仅可以在函数内部使用 使用简式声明重复声明变量 偶然的变量隐藏Accidental Variable Shadowing 不使用显式类型,无法使用“nil”来初始化变量 使用“nil” Slices and Maps Map的容量 字符串不会为“nil” Array函数的参数 在Slice和Array使用“range”语句时的出现的不希望得到的值 Slices和Arrays是一维的 访问不存在的Map Keys Strings无法修改 String和Byte Slice之间的转换 String和索引操作 字符串不总是UTF8文本 字符串的长度 在多行的Slice、Array和Map语句中遗漏逗号 log.Fatal和log.Panic不仅仅是Log 内建的数据结构操作不是同步的 String在“range”语句中的迭代值 对Map使用“for range”语句迭代 "switch"声明中的失效行为

去除php7编译安装的模块sqlite3

我是研究僧i 提交于 2020-08-18 21:45:28
去除php7编译安装的模块,这里以sqlite3为例 SQLite3 扩展自 PHP 5.3.0 起已默认启用。 允许在编译时使用 --without-sqlite3 禁用之 背景 我在开发项目的时候需要使用php连接加密的sqlite数据库,但是php默认编译的sqlite扩展不支持连接加密的sqlite数据库,因此我必须把编译安装的sqlite3移除掉,安装支持连接加密的sqlite数据库的扩展 前提 假设你已经编译安装好了php7,且在编译安装php7的时候未显示禁止 --without-sqlite3,导致这个模块已经被编译安装进php,满足这个前提下,再来看这篇文章 如果不知道如何编译安装php7,请参考这篇文章 centos7编译安装php7 查看文章的过程中,一定要注意各个命令的操作路径,需要将这些路径替换成你自己开发环境中的路径,切记 文章中 php7.1 命令只是对 php 命令的一个软连接,如果不清楚,请仔细阅读这篇文章 centos7编译安装php7 查看php安装好的模块 [root@localhost ~]# php7.1 -m [PHP Modules] bcmath Core ctype curl date dom fileinfo filter ftp gd gettext hash iconv json libxml mbstring mcrypt

宝塔安装建站教程

有些话、适合烂在心里 提交于 2020-08-18 12:24:22
一、安装宝塔   centos安装脚本:     yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh   ubuntu、deepin安装脚本     wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && sudo bash install.sh   debian安装脚本     wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && bash install.sh   fedora安装脚本     wget -O install.sh http://download.bt.cn/install/install.sh && bash install.sh 二、宝塔界面   首页--快速极简安装 网站--添加--配置信息 三、PHP扩展    PHP-- 扩展 选择PHP版本--开始安装   手动命令安装 如安装:扩展fileinfo     wget -O ext.sh http://125.88.182.172:5880/ext/ext.sh && sh ext.sh

C# Log4net记录日志

£可爱£侵袭症+ 提交于 2020-08-18 10:46:32
前言 1、需求 需求很简单,就是在C#开发中高速写日志。比如在高并发,高流量的地方需要写日志。我们知道程序在操作磁盘时是比较耗时的,所以我们把日志写到磁盘上会有一定的时间耗在上面,这些并不是我们想看到的。 解决方案 2.1、简单原理说明 使用 列队 先缓存到内存,然后我们一直有个 线程 再从列队中写到磁盘上,这样就可以高速高性能的写日志了。因为速度慢的地方我们分离出来了,也就是说程序在把日志扔给列队后,程序的日志部分就算完成了,后面操作磁盘耗时的部分程序是不需要关心的,由另一个线程操作。 俗话说,鱼和熊掌不可兼得,这样会有一个问题,就是如果日志已经到列队了这个时候程序崩溃或者电脑断电都会导致日志部分丢失,但是有些地方为了高性能的写日志,是否可以忽略一些情况,请各位根据情况而定。 2.2、示例图 关键代码部分 这里写日志的部分LZ选用了比较常用的 log4net ,当然也可以选择其他的日志组件,比如nlog等等。 3.1、日志至列队部分 第一步我们首先需要把日志放到列队中,然后才能从列队中写到磁盘上。 public void EnqueueMessage( string message, FlashLogLevel level, Exception ex = null ) { if ((level == FlashLogLevel.Debug && _log

电商项目

瘦欲@ 提交于 2020-08-18 10:04:22
电商项目 数据库: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Model { // 用户表 public class User { public int Id { get ; set ; } // 用户id public string Name { get ; set ; } // 用户名 public string Pwd { get ; set ; } // 密码 } // 店铺表 public class Shop { public int Id { get ; set ; } // 店铺id public string SName { get ; set ; } // 店铺名 } // 商品表 public class Goods { public int Id { get ; set ; } // 商品id public string Name { get ; set ; } // 商品名 public string Img { get ; set ; } // 商品图片 public int Price { get ; set ; } // 价格 public