`
DarkWingBoy
  • 浏览: 47991 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

golang/PHP输出excel

 
阅读更多

http://www.dotcoo.com/golang-math-rand

 

 

以前输入excel的时候utf8总是乱码还是用其他方式把utf8转换为gbk才能显示,呵呵,其实是输出了csv,后来群里的朋友说需要utf8 BOM Excel才能正常识别utf8,今天测试了一下,很爽,比以前省了好几行代码.呼呼

BOM信息参考:

http://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F

golang实现:

package main
    
import (
    "os"
    "encoding/csv"
)
    
func main() {
    f, err := os.Create("haha2.xls")
    if err != nil {
        panic(err)
    }
    defer f.Close()
    
    f.WriteString("\xEF\xBB\xBF") // 写入UTF-8 BOM
    
    w := csv.NewWriter(f)
    w.Write([]string{"编号","姓名","年龄"})
    w.Write([]string{"1","张三","23"})
    w.Write([]string{"2","李四","24"})
    w.Write([]string{"3","王五","25"})
    w.Write([]string{"4","赵六","26"})
    w.Flush()
}

php实现:

<?php
$datas = array(
        array(1, "张三", 23), 
        array(2, "李四", 24),
        array(3, "王五", 25),
        array(4, "赵六", 26),
);
     
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=".date('YmdHis').".xls");
  
$fp = fopen('php://output', 'w');
fwrite($fp, "\xEF\xBB\xBF");
$head = array("编号", "姓名", "年龄");
fputcsv($fp, $head);
foreach ($datas as $r) {
    fputcsv($fp, $r);
}
fclose($fp);
分享到:
评论

相关推荐

    onvif协议像机 在线搜索 预览工具golang/QT

    onvif协议像机 在线搜索 预览工具 golang/QT

    golang.org/x/sys/windows

    golang.org/x/sys/windows

    golang实现的读取excel模板批量生成excel工具.zip

    golang实现的读取excel模板批量生成excel工具,内含脚本文件及32位版的exe,可直接运行

    golang与PHP输出excel示例

    主要介绍了golang与PHP输出excel的方法,结合实例形式对比分析了Go语言及php输出Excel文件的相关技巧,需要的朋友可以参考下

    golang.org/x

    golang.org/x 包容易被墙,所以上传上来。 使用时解压到 gopath 目录的go\src 文件夹下。

    golang /js index 转换excel字母列名

    golang代码 package main import fmt // 0=&gt;A 1=&gt;B 26=&gt;AA func Index2ExcelRow(index int)string{ var Letters = []string{A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z} // ...

    下载golang.org/x包的操作方法

    golang.org/x包放到了https://github.com/golang/text中,下载时需要先在本地建立golang.org/x的目录后,再下载。 mkdir -p golang.org/x git clone https://github.com/golang/text.git 或 go get github....

    golang 扩展package 列表

    https://github.com/golang/arch.git https://github.com/golang/playground.git https://github.com/golang/debug.git https://github.com/golang/term.git https://github.com/golang/time.git ...

    Go+Golang+Beego微服务基础实战.rar

    分享视频教程:Go/Golang/Beego微服务基础实战视频教程,2020年最新录制,完整版400多节视频,附带源码, 本课程从Beego环境搭建开始讲解,涉及Beego知识的方方面面,最后还有企业级项目实战,让你真正能学以致用!

    golang读取excel模板批量生成word工具.zip

    golang实现的读取excel模板批量生成word工具,内含脚本文件及32位版的exe,可直接运行

    golang.org/x下的包集合

    https://golang.org/x/下的相关的包国内无法下载,这个可以直接将解压后的golang.org-master/x目录下到包放到GOPATH目录下的golang.org/x路径下面,执行go install 包名称就行了

    gcc-golang-mingw64-9.0.rar

    解决C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%

    Go编程语言中的Snappy压缩格式。-Golang开发

    要从源代码下载和安装:$ go get github.com/golang/snappy除非另有说明,否则Snappy-Go源文件是根据LICENSE文件中的BSD样式许可分发的。 基准。 golang / snappy基准测试包括压缩(Z)和解压缩(U)十个左右的文件...

    demoinfocs-golang:高性能CS

    去弄 go get -u github.com/markus-wa/demoinfocs-golang/v2/pkg/demoinfocs 目录要求快速入门指南例子更多例子文档特征性能/基准版本控制使用 demoinfocs-golang 的项目发展调试测试生成接口生成 Protobuf 代码Git ...

    GoMock是用于Go编程语言的模拟框架。-Golang开发

    gomock GoMock是Go编程...要获取最新发布的版本,请使用:GO111MODULE = on go github.com/golang/mock/ [电子邮件保护]如果您在CI管道中使用模拟量,则更适合固定在特定的模拟量版本上。 文档安装后,您可以使用go d

    golang.org.zip

    go语言 下载依赖 package golang.org/x/net/http2/hpack: unrecognized import path "golang.org/x/net/http2/hpack" ... or established connection failed because connected host has failed to respond.)

    go依赖包golang.org/x下的所有源码

    go语言依赖包,为不方便下载的同学,提供便利。因为经常被墙,所以直接下载这个就可以了。

    golang/python实现归并排序实例代码

    主要给大家介绍了关于golang/python实现归并排序的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    golang.org/x包

    包含GolangWeb开发所需的常用golang.org/x包内容,这个包的内容不好获取,我这一件打包方便使用。PS:解压后放到gopath的src目录下即可。

Global site tag (gtag.js) - Google Analytics