public static string listarArchivosContenidos(string nombre_carpeta) { DescripcionArchivosCarpetas descripcion_archivos_carpetas = (DescripcionArchivosCarpetas)HttpContext.Current.Session["descripcion_archivos_carpetas"]; string resultado = ""; string ruta_principal = HttpContext.Current.Server.MapPath("~/"); string ruta_relativa_base = "Protegido\\Contenedor"; string ruta_actual = ruta_principal + ruta_relativa_base + nombre_carpeta; ruta_actual = ruta_actual.Replace("/", @"\"); ////refefrenciamos el directorio (carpeta)---------------------- DirectoryInfo dir_info = new DirectoryInfo(ruta_actual); if (dir_info.Exists) { dir_info.Refresh(); DirectoryInfo[] lista_directorios = dir_info.GetDirectories(); for (int i = 0; i < lista_directorios.Length; i++) { var ruta_web = "Contenedor" + nombre_carpeta + "/" + lista_directorios[i].Name; var nombre_carpeta_convertida = nombre_carpeta.Replace("/", @"\"); String[] datos_carpeta = descripcion_archivos_carpetas.obtenerDescripcionCarpetaVar(nombre_carpeta_convertida); //verificamos si tiene contenido: archivos o carpetas bool tiene_archivos = false; DirectoryInfo[] ldir = lista_directorios[i].GetDirectories(); FileInfo[] lfile = lista_directorios[i].GetFiles(); if (ldir.Length > 0 || lfile.Length > 0) { tiene_archivos = true; } string res = "{"; //res += "\"nombre_completo\":\"" + lista_archivos[i].FullName + "\","; res += "\"tipo\":\"carpeta\","; res += "\"tiene_contenido\":\"" + tiene_archivos + "\","; res += "\"rutaweb\":\"" + ruta_web + "\","; res += "\"nombre\":\"" + lista_directorios[i].Name + "\","; res += "\"ultima_mod\":\"" + lista_directorios[i].LastWriteTime + "\","; res += "\"desc\":\"" + datos_carpeta[0] + "\","; res += "\"fecha_desc\":\"" + datos_carpeta[1] + "\""; res += "}"; resultado += res + ","; } FileInfo[] lista_archivos = dir_info.GetFiles(); for (int i = 0; i < lista_archivos.Length; i++) { var ruta_web = "Contenedor" + nombre_carpeta + "/" + lista_archivos[i].Name; var nombre_carpeta_convertida = nombre_carpeta.Replace("/", @"\"); String[] datos_archivos = descripcion_archivos_carpetas.obtenerDescripcionArchivoVar(lista_archivos[i].Name, nombre_carpeta_convertida); //try //{ string ext = (lista_archivos[i].Extension.Length >= 1) ? lista_archivos[i].Extension.Substring(1) : ""; string res = "{"; //res += "\"nombre_completo\":\"" + lista_archivos[i].FullName + "\","; res += "\"tipo\":\"archivo\","; res += "\"rutaweb\":\"" + ruta_web + "\","; res += "\"nombre\":\"" + lista_archivos[i].Name + "\","; res += "\"ext\":\"" + ext + "\","; res += "\"ultima_mod\":\"" + lista_archivos[i].LastWriteTime + "\","; res += "\"size\":\"" + lista_archivos[i].Length + "\","; res += "\"desc\":\"" + datos_archivos[0] + "\","; res += "\"fecha_desc\":\"" + datos_archivos[1] + "\""; res += "}"; resultado += res + ","; //} //catch(Exception e){ // Debug.WriteLine("ERROR :: listarArchivosContenidos :: " + e.ToString()); //} } //si se encontraron archivos if (resultado.Length > 0) { resultado = resultado.Substring(0, resultado.Length - 1); } } //regresamos todos los archivos y sis datos en una estructura llamada carpeta resultado = "{\"carpeta\":[" + resultado + "]}"; return(resultado); }
private void cargarDescripcion() { this.descripcion_archivos_carpetas = new DescripcionArchivosCarpetas(); Session["descripcion_archivos_carpetas"] = this.descripcion_archivos_carpetas; }