GO语言实现文件上传代码分享
功能很简单,代码也很简洁,这里就不多废话了。
package main
import (
"fmt"
"io"
"net/http"
"os"
)
const (
upload_path string = "./upload/"
)
func helloHandle(w http.ResponseWriter, r *http.Request) {
io.WriteString(w, "hello world!")
}
//上传
func uploadHandle(w http.ResponseWriter, r *http.Request) {
//从请求当中判断方法
if r.Method == "GET" {
io.WriteString(w, "<html><head><title>我的第一个页面</title></head><body><form action='' method=\"post\" enctype=\"multipart/form-data\"><label>上传图片</label><input type=\"file\" name='file' /><br/><label><input type=\"submit\" value=\"上传图片\"/></label></form></body></html>")
} else {
//获取文件内容 要这样获取
file, head, err := r.FormFile("file")
if err != nil {
fmt.Println(err)
return
}
defer file.Close()
//创建文件
fW, err := os.Create(upload_path + head.Filename)
if err != nil {
fmt.Println("文件创建失败")
return
}
defer fW.Close()
_, err = io.Copy(fW, file)
if err != nil {
fmt.Println("文件保存失败")
return
}
//io.WriteString(w, head.Filename+" 保存成功")
http.Redirect(w, r, "/hello", http.StatusFound)
//io.WriteString(w, head.Filename)
}
}
func main() {
//启动一个http 服务器
http.HandleFunc("/hello", helloHandle)
//上传
http.HandleFunc("/image", uploadHandle)
err := http.ListenAndServe(":8080", nil)
if err != nil {
fmt.Println("服务器启动失败")
return
}
fmt.Println("服务器启动成功")
}
以上所述就是本文的全部内容了,希望大家能够喜欢,能够对大家学习go语言有所帮助。
相关推荐
-
Go语言压缩和解压缩tar.gz文件的方法
本文实例讲述了Go语言压缩和解压缩tar.gz文件的方法.分享给大家供大家参考.具体分析如下: golang处理压缩包,最常用的就是tar.gz了,这里写了一个测试一下. 压缩文件: 复制代码 代码如下: package main import ( "fmt" "os" "io" "archive/tar" "compress/gzip" ) func main()
-
Go语言编程中判断文件是否存在是创建目录的方法
判断文件是否存在 os.IsExists()函数和os.IsNotExists(),他们的函数的原形是func IsExist(err error) bool func IsNotExist(err error) bool 都是传入一个err返回bool 这里注意了 err已经定义好了 复制代码 代码如下: /* var ( ErrInvalid = errors.New("invalid argument") ErrPermission = errors.
-
go语言实现一个最简单的http文件服务器实例
本文实例讲述了go语言实现一个最简单的http文件服务器的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package main import ( "net/http" ) func main() { http.Handle("/", http.FileServer(http.Dir("./"))) http.ListenAndServe(":8123", nil) } 希望本文
-
使用Go语言实现远程传输文件
前言 之前有一篇介绍如何使用Go语言通过SSH协议来执行远程命令:如何使用Go语言实现远程执行命令 同样,通过SSH协议也可以使用Go语言来远程传输文件. 除了 SSH 的库,为了传输文件,还需要用到 github.com/pkg/sftp 这个库. 实现方式 废话不多说,直接看代码. 由于是基于 SSH 协议实现的远程文件传输,所以先创建 SSH 的连接,再创建传输文件的 sftp 客户端. func connect(user, password, host string, port int)
-
python用ConfigObj读写配置文件的实现代码
发现一个简单而又强大的读写配置文件的lib,http://www.voidspace.org.uk/python/configobj.html.个人觉得最大的亮点在于自带的格式校验功能,并且支持复杂的嵌套格式,而且使用起来也相当的简便. 来看例子吧.读文件 复制代码 代码如下: from configobj import ConfigObj config = ConfigObj(filename) # value1 = config['keyword1']
-
Go语言判断指定文件是否存在的方法
本文实例讲述了Go语言判断指定文件是否存在的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package main import ( "fmt" "os" ) func main() { f, err := os.Open("dotcoo.com.txt") if err != nil && os.IsNotExist(err) { fmt.Pri
-
GO语言文件的创建与打开实例分析
本文实例分析了GO语言文件的创建与打开用法.分享给大家供大家参考.具体分析如下: 文件操作是个很重要的话题,使用也非常频繁,熟悉如何操作文件是必不可少的.Golang 对文件的支持是在 os package 里,具体操作都封装在 type File struct {} 结构体中. 一.func Open(name string) (file *File, err error) 再简单不过了,给一个路径给它,返回文件描述符,如果出现错误就会返回一个 *PathError. 这是一个只读打开模式,实
-
GO语言常用的文件读取方式
本文实例讲述了GO语言常用的文件读取方式.分享给大家供大家参考.具体分析如下: Golang 的文件读取方法很多,刚上手时不知道怎么选择,所以贴在此处便后速查. 一次性读取 小文件推荐一次性读取,这样程序更简单,而且速度最快. 复制代码 代码如下: func ReadAll(filePth string) ([]byte, error) { f, err := os.Open(filePth) if err != nil { return nil, err } return iouti
-
GO语言实现文件上传代码分享
功能很简单,代码也很简洁,这里就不多废话了. 复制代码 代码如下: package main import ( "fmt" "io" "net/http" "os" ) const ( upload_path string = "./upload/" ) func helloHandle(w http.ResponseWriter, r *http.Request)
-
php处理单文件、多文件上传代码分享
php处理 单文件.多文件上传实例代码,供大家参考,具体内容如下 后台处理文件submit_form_process.php <?php /****************************************************************************** 参数说明: $max_file_size : 上传文件大小限制, 单位BYTE $destination_folder : 上传文件路径 $watermark : 是否附加水印(1为加水印,其他为不加
-
GO语言实现文件上传的示例代码
目录 前言 文件上传 表单操作 服务端操作 流程实现 小结 前言 最近在写一个文件上传的功能,现在来进行整理总结一下go语言如何上传文件的,本文主要分享一下golang实现文件上传的流程和具体代码,供大家参考,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助. 文件上传 表单操作 要使表单能够上传文件,需要添加form的enctype属性enctype="multipart/form-data",upload.html代码如下: <html> <head> &
-
python socket通信编程实现文件上传代码实例
这篇文章主要介绍了python socket通信编程实现文件上传代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 写一个file_receive.py和一个file_send.py程序,由file_send.py上传一个文件,file_receive.py接收上传的文件,写到指定的包内 #file_receive.py import socket,subprocess,os BASE_DIR = os.path.dirname(os.pa
-
springboot多文件上传代码实例及解析
这篇文章主要介绍了springboot多文件上传代码实例及解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一说明 spingMVC支持文件上传,我们通过Apach 的 commons-fileupload 包的CommonsMultipartResolver 去实现了 spingMVC的MultipartResolver . 本文章的示例是个简单的多文件上传,根据不同的业务自行修改. 二pom.xlm <dependencies> <
-
php+ajax 文件上传代码实例
本文实例为大家分享了php+ajax 文件上传的具体代码,供大家参考,具体内容如下 html 代码 <form action="{pboot:form fcode=8}" method="post" id="t" enctype="multipart/form-data"> <input type="file" name='tables_a' id="tables" o
-
Go语言实现文件上传
本文实例为大家分享了Go实现文件上传的具体代码,供大家参考,具体内容如下 文件上传:客户端把上传文件转换为二进制流后发送给服务器,服务器对二进制流进行解析 HTML表单(form)enctype(Encode Type)属性控制表单在提交数据到服务器时数据的编码类型. enctype=”application/x-www-form-urlencoded” 默认值,表单数据会被编码为名称/值形式 enctype=”multipart/form-data” 编码成消息,每个控件对应消息的一部分.请求
-
asp.net文件上传示例分享
方法一:用Web控件FileUpload,上传到网站根目录. Test.aspx关键代码: 复制代码 代码如下: <form id="form1" runat="server"><asp:FileUpload ID="FileUpload1" runat="server" /><asp:Button ID="Button1" runat="server" T
-
asp.net html控件的File控件实现多文件上传实例分享
asp.net多文件上传使用html控件的File控件,在form中就需要加入[ enctype="multipart/form-data"]. up3.aspx文件代码 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="up3.aspx.cs" Inherits="up3" %> <!DOCTYPE ht
-
非常经典的PHP文件上传类分享
文件上传是项目开发中比较常见的功能,但文件上传的过程比较繁琐,只要是有文件上传的地方就需要编写这些复杂的代码.为了能在每次开发中降低功能的编写难度,也为了能节省开发时间,通常我们都会将这些反复使用的一段代码封装到一个类中. <?php /** +----------------------------------------------------------------------------- * 文件上传类 +----------------------------------------
随机推荐
- Sql Server 2008完全卸载方法(其他版本类似)第1/2页
- Angular弹出模态框的两种方式
- iOS触摸事件UITouch应用详解
- Access出现"所有记录中均未找到搜索关键字"的错误解决
- javascript 小时:分钟的正则表达式
- Java基于正则表达式实现的替换匹配文本功能【经典实例】
- java 打印一字符串,并在main()方法内调用它
- 关于json字符串与实体之间的严格验证代码
- php示例详解Constructor Prototype Pattern 原型模式
- python实现的文件同步服务器实例
- Android studio点击跳转WebView详解
- PHP实现网页内容html标签补全和过滤的方法小结【2种方法】
- 编写Ruby脚本来对Twitter用户的数据进行深度挖掘
- 使用批处理清除事件查看器所有Windows EventLog日志的代码
- jquery xMarquee实现文字水平无缝滚动效果
- Python二维码生成库qrcode安装和使用示例
- 教你轻松学会SQL Server记录轮班的技巧
- 原JS实现banner图的常用功能
- Tomcat日志文件定时清理备份的脚本
- 每天一个linux命令(30): chown命令详解