void EliminarContenidoTodo() { string[] contenido; string archivo; archivo = string.Empty; contenido = null; foreach (var item in LstApariciones.Items) { DatosArchivo entidad = item as DatosArchivo; if (!entidad.Archivo.Equals(archivo)) { if (!string.IsNullOrEmpty(archivo)) { if ((bool)ChkRespaldar.IsChecked) { CrearArchivoRespaldo(entidad.Archivo); } File.WriteAllLines(entidad.Archivo, contenido); } archivo = entidad.Archivo; contenido = File.ReadAllLines(archivo); } for (int i = entidad.Inicio; i <= entidad.Final; i++) { contenido[i - 1] = string.Empty; } } if ((bool)(ChkRespaldar.IsChecked)) { CrearArchivoRespaldo(archivo); } File.WriteAllLines(archivo, contenido); }
List <DatosArchivo> EncontrarArchivosTodo() { List <string> LInclusion; var LAparicion = new List <DatosArchivo>(); var HSArchivo = new HashSet <string>(); LInclusion = new List <string>(TxtInclusiones.Text.Split(' ')); foreach (string inclusion in LInclusion) { var files = Directory.EnumerateFiles(TxtRuta.Text, "*.*", SearchOption.TopDirectoryOnly) .Where(file => file.EndsWith(inclusion, true, System.Globalization.CultureInfo.CurrentCulture) && !file.EndsWith(EXTENSION_RESPALDO, true, System.Globalization.CultureInfo.CurrentCulture)); HSArchivo.UnionWith(files); } foreach (string archivo in HSArchivo) { string excluido; string[] contenido; int conteoContenido; bool debeAgregarse; bool debeEsperar; bool lineaInicia; bool lineaTermina; int inicio; int final; excluido = TxtExclusiones.Text.Trim(); contenido = File.ReadAllLines(archivo); conteoContenido = 0; inicio = 0; final = 0; debeAgregarse = false; debeEsperar = false; foreach (string linea in contenido) { string _linea; _linea = linea.Trim(); conteoContenido++; lineaInicia = _linea.StartsWith("/* TODO -o"); lineaTermina = _linea.EndsWith("*/"); if (lineaInicia) { inicio = conteoContenido; if (lineaTermina) { debeAgregarse = true; debeEsperar = false; } else { debeEsperar = true; debeAgregarse = false; } } if (debeEsperar && lineaTermina) { final = conteoContenido; debeEsperar = false; debeAgregarse = true; } if (debeAgregarse) { if (!string.IsNullOrEmpty(excluido)) { if (_linea.IndexOf(excluido, StringComparison.OrdinalIgnoreCase) >= 0) { debeAgregarse = false; } } } if (debeAgregarse) { final = conteoContenido; DatosArchivo item = new DatosArchivo(); item.Archivo = archivo; item.Contenido = _linea; item.Inicio = inicio; item.Final = final; LAparicion.Add(item); debeAgregarse = false; debeEsperar = false; } } } return(LAparicion); }