小编min*_*ner的帖子

如何从HTML表单中读取输入并将其保存在文件中 - Golang

我正在尝试建立一个非常简单的Web服务器,用户访问一个站点并写一个字符串和一个int.然后我想保存这两个输入,我的想法是将它做成一个文本文件,也可以显示在浏览器:.../textfile /

我不知道SO上的标准是关于可以发布多少代码的规范,但这是我到目前为止的内容:

type Person struct {
    name  string
    hours int
}

const filename string = "timelister"

func upload(w http.ResponseWriter, r *http.Request) {
    t, _ := template.ParseFiles("upload.html")
    t.Execute(w, nil)
}

func (person *Person) open() {
    newFilename := filename + ".txt"
    _, err := os.OpenFile(newFilename, os.O_RDWR|os.O_APPEND|os.O_CREATE, 0666)
    if err != nil {
        log.Fatal("Open Filename: ", err)
    }
}

func returnInput() //want to implement this
func saveInput() //want to implemet this


func main() {
    http.HandleFunc("/", upload)
    http.ListenAndServe(":8080", nil)

}
Run Code Online (Sandbox Code Playgroud)

我的HTML表单:(没有全部格式化)

     Name: <input …
Run Code Online (Sandbox Code Playgroud)

forms go

9
推荐指数
1
解决办法
2万
查看次数

尝试将键盘输入写入Golang中的文件

我试图从键盘输入,然后将其存储在文本文件中,但我对如何实际操作有点困惑.

我目前的代码如下:

// reads the file txt.txt 
bs, err := ioutil.ReadFile("text.txt")
if err != nil {
      panic(err)
}

// Prints out content
textInFile := string(bs)
fmt.Println(textInFile)

// Standard input from keyboard
var userInput string
fmt.Scanln(&userInput)

//Now I want to write input back to file text.txt
//func WriteFile(filename string, data []byte, perm os.FileMode) error

inputData := make([]byte, len(userInput))

err := ioutil.WriteFile("text.txt", inputData, )
Run Code Online (Sandbox Code Playgroud)

"os"和"io"包中有很多功能.我真的很困惑我实际应该为此目的使用哪一个.

我也很困惑WriteFile函数中的第三个参数应该是什么.在文档中说"perm os.FileMode"类型,但由于我是编程和Go的新手,我有点无能为力.

有没有人有关于如何程序的任何提示?玛丽,提前谢谢

go

7
推荐指数
1
解决办法
5993
查看次数

打印机 - 接收器程序中的"所有goroutine都睡着了 - 死锁!退出状态2"错误

我正在尝试创建一个简单的程序来学习Go中的频道.但我遇到了死锁错误,我无法弄明白

package main

import (
    "fmt"
    "time"
)

func printer(c chan int) {
    for i := 0; i < 10; i++ {
        c <- i
        time.Sleep(time.Second)
    }
}

func reciever(c chan int) {
    for {
        recievedMsg := <-c
        fmt.Println(recievedMsg)
    }
}

func main() {
    newChanel := make(chan int)
    printer(newChanel)
    reciever(newChanel)
}
Run Code Online (Sandbox Code Playgroud)

我最初的想法是关于睡眠功能,但即使我不包括这个,我仍然遇到这个错误并退出消息.任何人都可以提供一些如何解决这个问题的提示吗?

提前致谢

channel go

6
推荐指数
1
解决办法
4124
查看次数

为什么我的pthread功能打印出我的预期?

我是新的线程编程和在C中学习线程编程的阶段.

这个简单的代码编译并运行,但我认为它会打印出"hello world"和8号,但它没有.有人知道这个的原因吗?

void *threadfunc(void *input_data){  
    printf("Hello World");  
    long tid;  
    tid=(long)input_data;  
    printf("thread ID: &d", tid);  
    return NULL;  
    sleep(1);  
}  
int main(){  

    long t = 8;  
    int t1;  
    pthread_t thread_obj;  
    t1= pthread_create(&thread_obj, NULL,threadfunc, (void*)t);  
}*  
Run Code Online (Sandbox Code Playgroud)

提前致谢!:)

c printf pthreads

2
推荐指数
1
解决办法
6554
查看次数

标签 统计

go ×3

c ×1

channel ×1

forms ×1

printf ×1

pthreads ×1