Мне нужно вставить в файл результат mgo query MongoDB
, преобразованный в Go
, чтобы получить the id of images
var path="/home/Medo/text.txt"
pipe := cc.Pipe([]bson.M{
{"$unwind": "$images"},
{"$group": bson.M{"_id": "null", "images":bson.M{"$push": "$images"}}},
{"$project": bson.M{"_id": 0}}})
response := []bson.M{}
errResponse := pipe.All(&response)
if errResponse != nil {
fmt.Println("error Response: ",errResponse)
}
fmt.Println(response) // to print for making sure that it is working
data, err := bson.Marshal(&response)
s:=string(data)
if err22 != nil {
fmt.Println("error insertion ", err22)
}
Вот часть, где я должен создать файл и написать на нем.
Проблема в том, что когда я получил результат запроса в текстовом файле, я получил значения перечисления в последнем из каждого значения, например:
id of images
23456678`0`
24578689`1`
23678654`2`
12890762`3`
76543890`4`
64744848`5`
поэтому для каждого значения я получил отсортированное число в последнем, и я не могу понять, как после получения ответа от запроса я преобразовал Bson
в []Byte
, а затем в String
, но это заставляет меня получать отсортированные по перечислению значения в последнем из каждого результата
Я бы хотел отбросить эти 0
1
2
3
4
5
var _, errExistFile = os.Stat(path)
if os.IsNotExist(errExistFile) {
var file, errCreateFile = os.Create(path)
if isError(erro) {
return
}
defer file.Close()
}
fmt.Println("==> done creating file", path)
var file, errii = os.OpenFile(path, os.O_RDWR, 0644)
if isError(errii) {
return
}
defer file.Close()
// write some text line-by-line to file
_, erri := file.WriteString(s)
if isError(erri) {
return
}
erri = file.Sync()
if isError(erri) {
return
}
fmt.Println("==> done writing to file")