private void Export() { string newFilename = EditorUtility.SaveFilePanel("Export to CSV", EditorWindowTools.GetDirectoryName(csvFilename), csvFilename, "csv"); if (!string.IsNullOrEmpty(newFilename)) { csvFilename = newFilename; if (Application.platform == RuntimePlatform.WindowsEditor) { csvFilename = csvFilename.Replace("/", "\\"); } using (StreamWriter file = new StreamWriter(csvFilename, false, EncodingTypeTools.GetEncoding(encodingType))) { // Write heading: StringBuilder sb = new StringBuilder(); sb.Append("Field"); foreach (var language in table.languages) { sb.AppendFormat(",{0}", CSVExporter.CleanField(language)); } file.WriteLine(sb); // Write fields: foreach (var field in table.fields) { sb = new StringBuilder(); sb.Append(CSVExporter.CleanField(field.name)); foreach (var value in field.values) { sb.AppendFormat(",{0}", CSVExporter.CleanField(value)); } file.WriteLine(sb); } } EditorUtility.DisplayDialog("Export Complete", "The localized text table was exported to CSV (comma-separated values) format. ", "OK"); } }
private static string CleanField(string s) { return(CSVExporter.CleanField(s)); }