Heim > Artikel > Backend-Entwicklung > Wie füge ich vor einer bestimmten Zeichenfolge in go eine Datei hinzu?
Ich habe eine Datei, die mit dieser Struktur beginnt:
locals { my_list = [ "a", "b", "c", "d" //add more text before this ] }
Ich möchte den Text „e“ vor „//Mehr Text davor hinzufügen“ und „“, nach „d“ hinzufügen, damit es so aussieht:
locals { MY_LIST = [ "a", "b", "c", "d", "e" //add more text before this ] }
Wie kann ich dies dynamisch implementieren, damit ich in Zukunft weitere Zeichenfolgen zur Datei hinzufügen kann?
Vielen Dank
Um den Text „e“ vor der Zeile hinzuzufügen, die mit „//“ beginnt, können Sie wie folgt vorgehen.
func main() { f, err := os.OpenFile("locals.txt", os.O_RDWR, 0644) if err != nil { log.Fatal(err) } scanner := bufio.NewScanner(f) lines := []string{} for scanner.Scan() { ln := scanner.Text() if strings.Contains(ln, "//") { index := len(lines) - 1 updated := fmt.Sprintf("%s,", lines[index]) lines[index] = updated lines = append(lines, " \"e\"", ln) continue } lines = append(lines, ln) } content := strings.Join(lines, "\n") _, err = f.WriteAt([]byte(content), 0) if err != nil { log.Fatal(err) } }
Das obige ist der detaillierte Inhalt vonWie füge ich vor einer bestimmten Zeichenfolge in go eine Datei hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!