sub-cli/internal/format/txt/txt.go
2025-04-23 10:44:08 +08:00

30 lines
600 B
Go

package txt
import (
"fmt"
"os"
"sub-cli/internal/model"
)
// GenerateFromSubtitle converts our intermediate Subtitle to plain text format
func GenerateFromSubtitle(subtitle model.Subtitle, filePath string) error {
file, err := os.Create(filePath)
if err != nil {
return fmt.Errorf("error creating TXT file: %w", err)
}
defer file.Close()
// Write title if available
if subtitle.Title != "" {
fmt.Fprintln(file, subtitle.Title)
fmt.Fprintln(file)
}
// Write content without timestamps
for _, entry := range subtitle.Entries {
fmt.Fprintln(file, entry.Text)
}
return nil
}