Mostrando entradas con la etiqueta Utilidad. Mostrar todas las entradas
Mostrando entradas con la etiqueta Utilidad. Mostrar todas las entradas

domingo, 26 de agosto de 2012

Obtener tamaño de una imagen en c#

La siguiente función permite obtener el tamaño de una imagen, recibe un parámetro tipo char, para determinar si el tamaño se retorna en bytes, kilobytes o megabytes.
 

    public long ObtenerTamanoImagen(System.Drawing.Image vImage, char vMedida)
    {
        long vTamano = 0;
        long vTamanoBytes;
        if (vImage != null)
        {
            using (MemoryStream vMemoryStream = new MemoryStream())
            {
                vImage.Save(vMemoryStream, ImageFormat.Png);
                vTamanoBytes = vMemoryStream.Length;
                switch (vMedida)
                {
                    case 'b':
                        vTamano = vTamanoBytes;
                        break;
                    case 'k':
                        vTamano = vTamanoBytes / 1204;
                        break;
                    case 'm':
                        vTamano = vTamanoBytes / 1024 / 1024;
                        break;
                }
            }
        }
        return vTamano;
    }

Cambiar tamaño de una imagen en c#

La siguiente función permite cambiar el tamaño de una imagen, guardando la calidad de la misma.
 
        public Image CambiarTamanoImagen(Image pImagen, int pAncho, int pAlto)
        {
            //creamos un bitmap con el nuevo tamaño
            Bitmap vBitmap = new Bitmap(pAncho, pAlto);
            //creamos un graphics tomando como base el nuevo Bitmap
            using (Graphics vGraphics = Graphics.FromImage((Image)vBitmap))
            {
                //especificamos el tipo de transformación, se escoge esta para no perder calidad.
                vGraphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
                //Se dibuja la nueva imagen
                vGraphics.DrawImage(pImagen, 0, 0, pAncho, pAlto);
            }
            //retornamos la nueva imagen
            return (Image)vBitmap;
        }

lunes, 16 de abril de 2012

Uso de la clase StringBuilder

Dentro de .Net, los objetos String siempre tienen una longitud determinada, cada vez que se realizan operaciones sobre cadenas se crea una nueva cadena con el resultado de la operación, cuando se efectúan múltiples operaciones sobre las mismas el rendimiento puede verse afectado. En estos casos para evitar que se afecte el rendimiento se puede usar la clase StringBuilder, que contiene las siguientes operaciones:

 
        //Se crea el StringBuilder con el valor inicial
        StringBuilder vStringBuilder = new StringBuilder("Cadena Inicial:");
        //Contenido del StringBuilder: Cadena Inicial:
        //Con el método Append se agrega al final del valor inicial
        vStringBuilder.Append(" Sumando a la cadena.");
        //Contenido del StringBuilder: Cadena Inicial: Sumando a la cadena.
        //Con el método Remove se eliminan caracteres de la cadena
        vStringBuilder.Remove(0, 16);
        //Contenido del StringBuilder: Sumando a la cadena.
        //Con el método Replace se remplazan caracteres o subcadenas completas
        vStringBuilder.Replace("Sumando", "Restando");
        //Contenido del StringBuilder: Restando a la cadena.

viernes, 30 de septiembre de 2011

Ejecutar una ETL de integration Services desde C#

El siguiente fragmento de código permite ejecutar una ETL de Integration Services desde C#, se usa la referencia Microsoft.SQLServer.ManagedDTS.
    
            //Creamos una aplicación para realizar la ejecución
            Microsoft.SqlServer.Dts.Runtime.Application app = new Microsoft.SqlServer.Dts.Runtime.Application();
           //Creamos un paquete y le asignamos el que queremos ejecutar
            Package package = app.LoadPackage(@"C:\Users\JI\ETLS\Package.dtsx", null);
           //Ejecutamos el paquete
            DTSExecResult result = package.Execute();  
           //Imprimimos el resultado de la ejecución
            Console.WriteLine("Resultado de la ejecución: {0}", result.ToString());

miércoles, 29 de junio de 2011

Método realizado en c# para verificar si un archivo existe.

El siguiente método realizado en c# verifica si un archivo se encuentra almacenado en una ruta determinada.

    //La ruta debe ser absoluta y además estar completa
    //Ejemplo: C:\temp\Script-Zurich.bat
    public Boolean existeArchivo(String pPathArchivo)
    {
        try
        {
            if (File.Exists(pPathArchivo))
                return true;
            else
                return false;
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }