go:运行第一个go语言程序

news/2025/2/25 17:31:43

1.如何创建go语言编辑界面

2.案例一实现简单打印“hello worlg”:

package main 
 
import "fmt" 
 
func main() { 
    for i := 0; i < 10; { 
        if i < 0 { 
            continue 
        } 
        fmt.Println("hello world") 
        i++ 
    } 
} 

运行结果:

PS D:\demo2> go mod init DEMO2
go: creating new go.mod: module DEMO2
PS D:\demo2> go build
no Go files in D:\demo2
PS D:\demo2> go build
PS D:\demo2> go run main.go
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world
hello world

3.案例二实现字符转化为二维码并渲染到web页面

 
package main 
 
import ( 
	"fmt" 
	"image/png" 
	"log" 
	"net/http" 
 
	"github.com/skip2/go-qrcode"  
) 
 
// 处理二维码生成和页面渲染 
func generateQRCodeHandler(w http.ResponseWriter, r *http.Request) { 
	if r.Method == http.MethodPost { 
		// 获取表单中输入的文本 
		text := r.FormValue("text") 
		if text == "" { 
			http.Error(w, "请输入要转换为二维码的文本", http.StatusBadRequest) 
			return 
		} 
 
		// 生成二维码图片 
		qr, err := qrcode.New(text, qrcode.Medium) 
		if err!= nil { 
			http.Error(w, "生成二维码时出错", http.StatusInternalServerError) 
			return 
		} 
 
		// 设置响应头,指定返回的是 PNG 图片 
		w.Header().Set("Content-Type", "image/png") 
		// 将二维码图片编码为 PNG 格式并写入响应 
		if err := png.Encode(w, qr.Image(256)); err!= nil { 
			http.Error(w, "写入二维码图片时出错", http.StatusInternalServerError) 
			return 
		} 
		return 
	} 
 
	// 显示 HTML 表单页面 
	fmt.Fprint(w, ` 
	<!DOCTYPE html> 
	<html lang="en"> 
	<head> 
		<meta charset="UTF-8"> 
		<meta name="viewport" content="width=device-width, initial-scale=1.0"> 
		<title>生成二维码</title> 
	</head> 
	<body> 
		<h1>请输入要转换为二维码的文本</h1> 
		<form method="post"> 
			<input type="text" name="text" placeholder="输入文本"> 
			<button type="submit">生成二维码</button> 
		</form> 
	</body> 
	</html> 
	`) 
} 
 
func main() { 
	// 注册处理函数 
	http.HandleFunc("/", generateQRCodeHandler) 
 
	// 启动服务器,监听 8080 端口 
	log.Println("Server started at http://localhost:8080") 
	log.Fatal(http.ListenAndServe(":8080", nil)) 
} 

运行结果:


http://www.niftyadmin.cn/n/5865769.html

相关文章

DeepSeek 助力 Vue 开发:打造丝滑的滚动动画(Scroll Animations)

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 Deep…

elementUI方案汇总

1&#xff1a;el-table 设置固定列&#xff0c;横向滚动条在固定列的位置上无法滚动的问题 问题原因&#xff1a;固定列将下方的滚动条盖住了&#xff0c;无法触发滚动条的滚动。 解决方法&#xff1a;改变固定列的样式&#xff0c;给固定列设置下边距&#xff0c;下边距的大小…

【Godot4.3】自定义圆角容器

概述 Godot控件想要完全实现现代UI风格&#xff0c;需要进行大量的自定义组件设计。本篇就依托于笔者自己对现代UI设计中的圆角面板元素模仿来制作圆角容器组件。 圆角容器 圆角元素在现代的扁平UI设计中非常常见&#xff0c;在Godot中可以通过改进PanelContainer来或者自定…

【IEEE出版,往届会后3个月EI检索 | 西华大学主办 | 中英文期刊、SCI期刊推荐】第四届能源、电力与电气国际学术会议(ICEPET 2025)

第四届能源、电力与电气国际学术会议&#xff08;ICEPET 2025&#xff09;由西华大学主办&#xff0c;西华大学能源与动力工程学院、西华大学电气与电子信息学院、西华大学航空航天学院、流体及动力机械教育部重点实验室、流体机械及工程四川省重点实验室、四川省水电能源动力装…

2025年02月24日Github流行趋势

项目名称&#xff1a;mastra 项目地址url&#xff1a;https://github.com/mastra-ai/mastra 项目语言&#xff1a;TypeScript 历史star数&#xff1a;5735 今日star数&#xff1a;1140 项目维护者&#xff1a;adeleke5140, abhiaiyer91, TheIsrael1, adeniyii, Joshuafolorunsh…

冒泡排序:简单又易于实现的排序算法

大家好&#xff0c;今天我们来聊聊 冒泡排序&#xff08;Bubble Sort&#xff09;算法。听名字是不是很简单&#xff0c;感觉就像是水面上泡泡一样&#xff1f;没错&#xff0c;冒泡排序的名字来源于这种排序过程中&#xff0c;较大的元素像气泡一样逐步“冒泡”到数组的顶端。…

第4章 4.4 EF Core数据库迁移 Add-Migration UpDate-Database

4.4.1 数据库迁移原理 总结一下就是&#xff1a; 1. 数据库迁移命令的执行&#xff0c;其实就是生成在数据库执行的脚本代码&#xff08;两个文件&#xff1a;数字_迁移名.cs 数字_迁移名.Designer.cs&#xff09;&#xff0c;用于对数据库进行定义和修饰。 2. 数据库迁移…

java23种设计模式-原型模式

原型模式&#xff08;Prototype Pattern&#xff09;学习笔记 &#x1f31f; 定义 原型模式属于创建型设计模式&#xff0c;通过复制现有对象&#xff08;原型&#xff09;来创建新对象&#xff0c;避免重复进行初始化操作。该模式的核心是实现对象的克隆能力。 &#x1f3af…