Autor
|
Tema: Librería de Snippets para VB.NET !! (Compartan aquí sus snippets) (Leído 529,355 veces)
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
Validar la sintaxis de un RegEx #Region " Validate RegEx " ' [ Validate RegEx Function ] ' ' //By Elektro H@cker ' ' Examples : ' MsgBox(Validate_RegEx("\")) ' Result: False ' MsgBox(Validate_RegEx("\\")) ' Result: True Private Function Validate_RegEx(Pattern As String) As Boolean Dim temp_RegEx As System.Text.RegularExpressions.Regex Try temp_RegEx = New System.Text.RegularExpressions.Regex(Pattern) Return True Catch Return False Finally temp_RegEx = Nothing End Try End Function #End Region
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
Resalta los colores de las coincidencias encontradas de una expresión regular en el contenido de un RichTextBox. #Region " Highlight RegEx In RichTextBox " ' [ Highlight RegEx In RichTextBox Function ] ' ' //By Elektro H@cker ' ' Examples : ' ' RichTextBox1.Text = String.Format("{0}{1}{0}{1}{0}{1}", "Hello World!", vbNewLine) ' Match_RegEx_In_RichTextBox(RichTextBox1, "Hello (World)", 0, Color.Red) ' Colored Result: "Hello World" ' Match_RegEx_In_RichTextBox(RichTextBox1, "Hello (World)", 1, Color.Red) ' Colored Result: "World" Private Sub Highlight_RegEx_In_RichTextBox(ByVal richtextbox As RichTextBox, _ ByVal regex_pattern As String, _ ByVal regex_group As Integer, _ ByVal color As Color) Dim Matches = Regex.Match(richtextbox.Text, regex_pattern) Do While Matches.Success richtextbox.Select(Matches.Groups(regex_group).Index, Matches.Groups(regex_group).Length) RichTextBox1.SelectionColor = color Matches = Matches.NextMatch() Loop richtextbox.Select(richtextbox.TextLength, 0) ' Reset selection Matches = Nothing End Sub #End Region
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
· Obtiene el identificador de usuario (SID) de un usuario #Region " Username To SID " ' [ Username To SID ] ' ' // By Elektro H@cker ' ' Examples: ' MsgBox(Username_To_SID("Administrador")) ' Result: S-1-5-21-3344876933-2114507426-1248549232-500 Private Function Username_To_SID(ByVal Username As String) As String Dim SID As String = New System.Security.Principal.NTAccount(Username). _ Translate(GetType(System.Security.Principal.SecurityIdentifier)).Value Return SID End Function #End Region
· Obtiene la carpeta del perfil de usuario de un usuario. #Region " Username To ProfilePath " ' [ Username To ProfilePath ] ' ' // By Elektro H@cker ' ' Examples: ' MsgBox(Username_To_ProfilePath("Administrador")) ' Result: C:\Users\Administrador Private Function Username_To_ProfilePath(ByVal Username As String) As String Dim SID As String = _ New System.Security.Principal.NTAccount(Username). _ Translate(GetType(System.Security.Principal.SecurityIdentifier)).Value Return My.Computer.Registry.GetValue( _ "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProfileList\" & SID, _ "ProfileImagePath", _ "Unknown directory") End Function #End Region
· Obtiene el nombre de usuario de un identificador de usuario (SID) #Region " SID To Username " ' [ SID To Username ] ' ' // By Elektro H@cker ' ' Examples: ' MsgBox(SID_To_Username("S-1-5-21-3344876933-2114507426-1248549232-500")) ' Result: Administrador Private Function SID_To_UUsername(ByVal SID As String) As String Dim DomainName As String = New System.Security.Principal.SecurityIdentifier(SID). _ Translate(GetType(System.Security.Principal.NTAccount)).Value Return DomainName.Substring(DomainName.IndexOf("\") + 1) End Function #End Region
· Obtiene la carpeta del perfil de un usuario mediante un identificador de usuario (SID) #Region " SID To ProfilePath " ' [ SID To ProfilePath ] ' ' // By Elektro H@cker ' ' Examples: ' MsgBox(SID_To_ProfilePath("S-1-5-21-3344876933-2114507426-1248549232-500")) ' Result: "C:\Users\Administrador" Private Function SID_To_ProfilePath(ByVal SID As String) As String Return My.Computer.Registry.GetValue( _ "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProfileList\" & SID, _ "ProfileImagePath", _ "Unknown directory") End Function #End Region
|
|
« Última modificación: 14 Septiembre 2013, 05:43 am por EleKtro H@cker »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
· Colorear los items de un ListBox. #Region " [ListBox] Colorize Items " ' [ [ListBox] Colorize Items ] ' ' // By Elektro H@cker ' ' Examples : ' ' Set Drawmode to "OwnerDrawFixed" to make this work. ' ListBox1.DrawMode = DrawMode.OwnerDrawFixed ' ' Colorize only selected item: ' Colorize_Item(ListBox1, Colorize_ListBox_Items.Selected, Brushes.YellowGreen) ' ' Colorize all Non-Selected items ' Colorize_Item(ListBox1, Colorize_ListBox_Items.Non_Selected, Brushes.Red) ' ' Colorize all items: ' Colorize_Item(ListBox1, Colorize_ListBox_Items.All, Brushes.Yellow) ' ' Colorize any item: ' Colorize_Item(ListBox1, Colorize_ListBox_Items.None, Nothing) ' ' Colorize specific items: ' Colorize_Item(ListBox1, {0, (ListBox1.Items.Count \ 2), (ListBox1.Items.Count - 1)}, Brushes.HotPink) ' Stores the brush color to paint Dim ListBox_Color As Brush = Brushes.AliceBlue Private Enum Colorize_ListBox_Items As Short Selected = 0 Non_Selected = 1 All = 2 None = 3 End Enum Private Sub Colorize_Item(ByVal ListBox As ListBox, _ ByVal Items As Colorize_ListBox_Items, _ ByVal Brush_Color As Brush) ' Stores the Enum value ListBox.Tag = Items.ToString ' Stores the brush color ListBox_Color = Brush_Color ListBox.Invalidate() ' Refresh changes End Sub Private Sub Colorize_Item(ByVal ListBox As ListBox, _ ByVal Items As Integer(), _ ByVal Brush_Color As Brush) ' Stores the index items ListBox.Tag = String.Join(ChrW(Keys.Space), Items) ' Stores the brush color ListBox_Color = Brush_Color ListBox.Invalidate() ' Refresh changes End Sub Private Sub ListBox_DrawItem(ByVal sender As Object, ByVal e As DrawItemEventArgs) _ Handles ListBox1.DrawItem e.DrawBackground() Select Case sender.tag Case Colorize_ListBox_Items.Selected.ToString ' Colorize Selected Items If (e.State And DrawItemState.Selected) = DrawItemState.Selected Then e.Graphics.FillRectangle(ListBox_Color, e.Bounds) End If Case Colorize_ListBox_Items.Non_Selected.ToString ' Colorize Non-Selected Items If (e.State And DrawItemState.Selected) = DrawItemState.None Then e.Graphics.FillRectangle(ListBox_Color, e.Bounds) End If Case Colorize_ListBox_Items.All.ToString ' Colorize all e.Graphics.FillRectangle(ListBox_Color, e.Bounds) Case Colorize_ListBox_Items.None.ToString ' Colorize none Dim DefaultColor As SolidBrush = New SolidBrush(ListBox.DefaultBackColor) e.Graphics.FillRectangle(DefaultColor, e.Bounds) DefaultColor.Dispose() Case Else ' Colorize at specific index If Not String.IsNullOrEmpty(sender.tag) _ AndAlso sender.tag.ToString.Split.Contains(e.Index.ToString) Then e.Graphics.FillRectangle(ListBox_Color, e.Bounds) End If End Select Using b As New SolidBrush(e.ForeColor) e.Graphics.DrawString(ListBox1.GetItemText(ListBox1.Items(e.Index)), e.Font, b, e.Bounds) End Using e.DrawFocusRectangle() End Sub #End Region
|
|
« Última modificación: 14 Septiembre 2013, 05:44 am por EleKtro H@cker »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
· Una nueva versión de mi FileInfo personalizado, para obtener información sobre un archivo. Public Class InfoFile #Region " InfoFile " ' [ InfoFile ] ' ' // By Elektro H@cker ' ' Examples: ' ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Name)) ' Result: Test ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Extension_Without_Dot)) ' Result: txt ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FileName)) ' Result: Test.txt ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Directory)) ' Result: C:\ ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.DriveRoot)) ' Result: C:\ ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.DriveLetter)) ' Result: C ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FullName)) ' Result: C:\Test.txt ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.ShortName)) ' Result: Test.txt ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.ShortPath)) ' Result: C:\Test.txt ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Name_Length)) ' Result: 8 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Extension_Without_Dot_Length)) ' Result: 3 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FileName_Length)) ' Result: 8 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Directory_Length)) ' Result: 3 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FullName_Length)) ' Result: 11 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FileSize_Byte)) ' Result: 5.127.975 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FileSize_KB)) ' Result: 5.007.79 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FileSize_MB)) ' Result: 4,89 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FileSize_GB)) ' Result: 0,00 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FileSize_TB)) ' Result: 0,00 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.FileVersion)) ' Result: "" ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Attributes_Enum)) ' Result: 8224 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Attributes_String)) ' Result: Archive, NotContentIndexed ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.CreationTime)) ' Result: 16/09/2012 8:28:17 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.LastAccessTime)) ' Result: 16/09/2012 10:51:17 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.LastModifyTime)) ' Result: 16/09/2012 10:51:17 ' MsgBox(InfoFile.Get_Info("C:\Test.txt", InfoFile.Info.Has_Extension)) ' Result: True Public Enum Info Name ' Filename without extension Extension_With_Dot ' File-Extension (with dot included) Extension_Without_Dot ' File-Extension (without dot) FileName ' Filename.extension Directory ' Directory name FullName ' Directory path + Filename DriveRoot ' Drive letter DriveLetter ' Drive letter (only 1 character) ShortName ' DOS8.3 Filename ShortPath ' DOS8.3 Path Name Name_Length ' Length of Filename without extension Extension_With_Dot_Length ' Length of File-Extension (with dot included) Extension_Without_Dot_Length ' Length of File-Extension (without dot) FileName_Length ' Length of Filename.extension Directory_Length ' Length of Directory name FullName_Length ' Length of Directory path + Filename FileSize_Byte ' Size in Bytes FileSize_KB ' Size in KiloBytes FileSize_MB ' Size in MegaBytes FileSize_GB ' Size in GigaBytes FileSize_TB ' Size in TeraBytes FileVersion ' Version for DLL or EXE files Attributes_Enum ' Attributes as numbers Attributes_String ' Attributes as descriptions CreationTime ' Date Creation time LastAccessTime ' Date Last Access time LastModifyTime ' Date Last Modify time Has_Extension ' Checks if file have a file-extension. End Enum Public Shared Function Get_Info (ByVal File As String, ByVal Information As Info ) As String Dim File_Info = My. Computer. FileSystem. GetFileInfo(File) Select Case Information Case Info.Name : Return File_Info.Name.Substring(0, File_Info.Name.LastIndexOf(".")) Case Info.Extension_With_Dot : Return File_Info.Extension Case Info.Extension_Without_Dot : Return File_Info.Extension.Split(".").Last Case Info.FileName : Return File_Info.Name Case Info.Directory : Return File_Info.DirectoryName Case Info.DriveRoot : Return File_Info.Directory.Root.ToString Case Info.DriveLetter : Return File_Info.Directory.Root.ToString.Substring(0, 1) Case Info.FullName : Return File_Info.FullName Case Info. ShortName : Return CreateObject("Scripting.FileSystemObject"). GetFile(File). ShortName Case Info. ShortPath : Return CreateObject("Scripting.FileSystemObject"). GetFile(File). ShortPath Case Info.Name_Length : Return File_Info.Name.Length Case Info.Extension_With_Dot_Length : Return File_Info.Extension.Length Case Info.Extension_Without_Dot_Length : Return File_Info.Extension.Split(".").Last.Length Case Info.FileName_Length : Return File_Info.Name.Length Case Info.Directory_Length : Return File_Info.DirectoryName.Length Case Info.FullName_Length : Return File_Info.FullName.Length Case Info.FileSize_Byte : Return Convert.ToDouble(File_Info.Length).ToString("n0") Case Info.FileSize_KB : Return (Convert.ToDouble(File_Info.Length) / 1024L).ToString("n2") Case Info.FileSize_MB : Return (Convert.ToDouble(File_Info.Length) / 1024L ^ 2).ToString("n2") Case Info.FileSize_GB : Return (Convert.ToDouble(File_Info.Length) / 1024L ^ 3).ToString("n2") Case Info.FileSize_TB : Return (Convert.ToDouble(File_Info.Length) / 1024L ^ 4).ToString("n2") Case Info. FileVersion : Return CreateObject("Scripting.FileSystemObject"). GetFileVersion(File) Case Info.Attributes_Enum : Return File_Info.Attributes Case Info.Attributes_String : Return File_Info.Attributes.ToString Case Info.CreationTime : Return File_Info.CreationTime Case Info.LastAccessTime : Return File_Info.LastAccessTime Case Info.LastModifyTime : Return File_Info.LastWriteTime Case Info. Has_Extension : Return IO. Path. HasExtension(File) Case Else : Return String.Empty End Select End Function #End Region End Class
· Lo mismo de arriba pero para directorios: Public Class InfoDir #Region " InfoDir " ' [ InfoDir ] ' ' // By Elektro H@cker ' ' Examples: ' ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.Name)) ' Result: Test ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.Parent)) ' Result: Test Parent ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.FullName)) ' Result: C:\Test Parent\Test ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.DriveRoot)) ' Result: C:\ ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.DriveLetter)) ' Result: C ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.Name_Length)) ' Result: 4 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.FullName_Length)) ' Result: 19 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.Attributes_Enum)) ' Result: 8208 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.Attributes_String)) ' Result: Directory, NotContentIndexed ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.CreationTime)) ' Result: 16/09/2012 8:28:17 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.LastAccessTime)) ' Result: 16/09/2012 10:51:17 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.LastModifyTime)) ' Result: 16/09/2012 10:51:17 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.FileSize_Byte)) ' Result: 5.127.975 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.FileSize_KB)) ' Result: 5.007.79 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.FileSize_MB)) ' Result: 4,89 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.FileSize_GB)) ' Result: 0,00 ' MsgBox(InfoDir.Get_Info("C:\Test Parent\Test", InfoDir.Info.FileSize_TB)) ' Result: 0,00 Public Enum Info Name ' Folder name FullName ' Directory path Parent ' Parent directory DriveRoot ' Drive letter DriveLetter ' Drive letter (only 1 character) Name_Length ' Length of directory name FullName_Length ' Length of full directory path FileSize_Byte ' Size in Bytes (including subfolders) FileSize_KB ' Size in KiloBytes (including subfolders) FileSize_MB ' Size in MegaBytes (including subfolders) FileSize_GB ' Size in GigaBytes (including subfolders) FileSize_TB ' Size in TeraBytes (including subfolders) Attributes_Enum ' Attributes as numbers Attributes_String ' Attributes as descriptions CreationTime ' Date Creation time LastAccessTime ' Date Last Access time LastModifyTime ' Date Last Modify time End Enum Public Shared Function Get_Info(ByVal Dir As String, ByVal Information As Info) As String Dim Dir_Info = My.Computer.FileSystem.GetDirectoryInfo(Dir) Select Case Information Case Info.Name : Return Dir_Info.Name Case Info.FullName : Return Dir_Info.FullName Case Info.Parent : Return Dir_Info.Parent.ToString Case Info.DriveRoot : Return Dir_Info.Root.ToString Case Info.DriveLetter : Return Dir_Info.Root.ToString.Substring(0, 1) Case Info.Name_Length : Return Dir_Info.Name.Length Case Info.FullName_Length : Return Dir_Info.FullName.Length Case Info.FileSize_Byte : Return Convert.ToDouble(Get_Directory_Size(Dir_Info)).ToString("n0") Case Info.FileSize_KB : Return (Convert.ToDouble(Get_Directory_Size(Dir_Info)) / 1024L).ToString("n2") Case Info.FileSize_MB : Return (Convert.ToDouble(Get_Directory_Size(Dir_Info)) / 1024L ^ 2).ToString("n2") Case Info.FileSize_GB : Return (Convert.ToDouble(Get_Directory_Size(Dir_Info)) / 1024L ^ 3).ToString("n2") Case Info.FileSize_TB : Return (Convert.ToDouble(Get_Directory_Size(Dir_Info)) / 1024L ^ 4).ToString("n2") Case Info.Attributes_Enum : Return Dir_Info.Attributes Case Info.Attributes_String : Return Dir_Info.Attributes.ToString Case Info.CreationTime : Return Dir_Info.CreationTime Case Info.LastAccessTime : Return Dir_Info.LastAccessTime Case Info.LastModifyTime : Return Dir_Info.LastWriteTime Case Else : Return String.Empty End Select End Function Private Shared Function Get_Directory_Size(Directory As IO.DirectoryInfo) As Long Try Dim Dir_Total_Size As Long = Directory. EnumerateFiles(). Sum(Function(file) file. Length) Dir_Total_Size += Directory.EnumerateDirectories().Sum(Function(dir) Get_Directory_Size(dir)) Return Dir_Total_Size Catch End Try Return -1 End Function #End Region End Class
Convierte bytes a otra unidad: #Region " Convert Bytes Function " ' [ Convert Bytes Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(String.Format("{0} KB", Byte_To_Size(5127975, xByte.kilobyte, 2))) ' Result: 5007,79 KB ' MsgBox(String.Format("{0} MB", Byte_To_Size(5127975, xByte.megabyte, 2))) ' Result: 4,89 MB ' MsgBox(String.Format("{0} GB", Byte_To_Size(5127975, xByte.gigabyte, 3))) ' Result: 0,005 GB ' MsgBox(String.Format("{0} TB", Byte_To_Size(5127975, xByte.terabyte, 3))) ' Result: 0 TB ' MsgBox(String.Format("{0} PB", Byte_To_Size(5127975, xByte.petabyte, 3))) ' Result: 0 PB Enum xByte As Long kilobyte = 1024L megabyte = 1024L * kilobyte gigabyte = 1024L * megabyte terabyte = 1024L * gigabyte petabyte = 1024L * terabyte End Enum Private Function Byte_To_Size(ByVal bytes As Long, _ ByVal convertto As xByte, _ Optional ByVal decimals As Integer = 2 _ ) As Double Return (Convert.ToDouble(bytes) / convertto).ToString("n" & decimals) End Function #End Region
|
|
|
En línea
|
|
|
|
DarK_FirefoX
Desconectado
Mensajes: 1.263
Be the change you wanna see in te world
|
Este post, parece medio viejito, pero EXCELENTE APORTE. OJALA LO HUBIERA VISTO ANTES....SAlu2s
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
Este post, parece medio viejito, pero EXCELENTE APORTE. OJALA LO HUBIERA VISTO ANTES....SAlu2s Se agradece, pero es una pena que los .NETeros no estén muy interesados por mis publicaciones en este hilo Un saludo!
|
|
|
En línea
|
|
|
|
ABDERRAMAH
Desconectado
Mensajes: 431
en ocasiones uso goto ¬¬
|
Pues yo echo mano de este hilo de vez en cuando, hay cosas muy útiles.
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
Pues yo echo mano de este hilo de vez en cuando, hay cosas muy útiles. se agradece también!
· Devuelve la conversión de bytes a la unidad de tamaño más aproximada Por ejemplo, si le pasamos "60877579" bytes, nos devuelve este string: "58,06 MB" #Region " Round Bytes " ' [ Round Bytes Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Round_Bytes(1023)) ' Result: 1.023 Bytes ' MsgBox(Round_Bytes(80060, 1)) ' Result: 78,2 KB ' MsgBox(Round_Bytes(60877579)) ' Result: 58,06 MB ' MsgBox(Round_Bytes(4485888579)) ' Result: 4,18 GB ' MsgBox(Round_Bytes(20855564677579)) ' Result: 18,97 TB ' MsgBox(Round_Bytes(990855564677579)) ' Result: 901,18 PB ' MsgBox(Round_Bytes(1987464809247272)) ' Result: 1,77 PB Enum xByte As Long kilobyte = 1024L megabyte = 1024L * kilobyte gigabyte = 1024L * megabyte terabyte = 1024L * gigabyte petabyte = 1024L * terabyte End Enum Private Function Round_Bytes(ByVal bytes As Long, _ Optional ByVal decimals As Integer = 2 _ ) As String Select Case bytes Case Is >= xByte.petabyte Return String.Format("{0} PB", (Convert.ToDouble(bytes) / xByte.petabyte).ToString("n" & decimals)) Case Is >= xByte.terabyte Return String.Format("{0} TB", (Convert.ToDouble(bytes) / xByte.terabyte).ToString("n" & decimals)) Case Is >= xByte.gigabyte Return String.Format("{0} GB", (Convert.ToDouble(bytes) / xByte.gigabyte).ToString("n" & decimals)) Case Is >= xByte.megabyte Return String.Format("{0} MB", (Convert.ToDouble(bytes) / xByte.megabyte).ToString("n" & decimals)) Case Is >= xByte.kilobyte Return String.Format("{0} KB", (Convert.ToDouble(bytes) / xByte.kilobyte).ToString("n" & decimals)) Case Is >= 0 Return String.Format("{0} Bytes", Convert.ToDouble(bytes).ToString("n0")) Case Else Return String.Empty End Select End Function #End Region
|
|
« Última modificación: 17 Septiembre 2013, 20:39 pm por EleKtro H@cker »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
· FileSize Converter Convierte tamaños de unidades de almacenamiento #Region " FileSize Converter " ' [ FileSize Converter Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(String.Format("92928374 bytes = {0} Bytes", FileSize_Converter(92928374, Units.bytes, Units.bytes).ToString("n0"))) ' Result: 92.928.374,00 Bytes ' MsgBox(String.Format("92928374 bytes = {0} KB", FileSize_Converter(92928374, Units.bytes, Units.kilobyte).ToString("n2"))) ' Result: 90.750,37 KB ' MsgBox(String.Format("92928374 bytes = {0} MB", FileSize_Converter(92928374, Units.bytes, Units.megabyte).ToString("n2"))) ' Result: 88,62 MB ' MsgBox(String.Format("50 GB = {0} Bytes", FileSize_Converter(50, Units.gigabyte, Units.bytes).ToString("n2"))) ' Result: 53.687.091.200,00 Bytes ' MsgBox(String.Format("50 GB = {0} KB", FileSize_Converter(50, Units.gigabyte, Units.kilobyte).ToString("n2"))) ' Result: 52.428.800,00 KB ' MsgBox(String.Format("50 GB = {0} MB", FileSize_Converter(50, Units.gigabyte, Units.megabyte).ToString("n2"))) ' Result: 51,200,00 MB Enum Units As Long bytes = 1L kilobyte = 1024L megabyte = 1048576L gigabyte = 1073741824L terabyte = 1099511627776L petabyte = 1125899906842624L End Enum Private Function FileSize_Converter(ByVal Size As Long, _ ByVal FromUnit As Units, _ ByVal ToUnit As Units) As Double Dim bytes As Double = Convert.ToDouble(Size * FromUnit) Dim result As Double = 0 If ToUnit < FromUnit Then Select Case ToUnit Case Units.bytes : result = bytes Case Units.kilobyte : result = bytes / Units.kilobyte Case Units.megabyte : result = bytes / Units.megabyte Case Units.gigabyte : result = bytes / Units.gigabyte Case Units.terabyte : result = bytes / Units.terabyte Case Units.petabyte : result = bytes / Units.petabyte Case Else : Return -1 End Select ElseIf ToUnit > FromUnit Then Select Case ToUnit Case Units.bytes : result = bytes Case Units.kilobyte : result = bytes * Units.kilobyte / Units.kilobyte ^ 2 Case Units.megabyte : result = bytes * Units.megabyte / Units.megabyte ^ 2 Case Units.gigabyte : result = bytes * Units.gigabyte / Units.gigabyte ^ 2 Case Units.terabyte : result = bytes * Units.terabyte / Units.terabyte ^ 2 Case Units.petabyte : result = bytes * Units.petabyte / Units.petabyte ^ 2 Case Else : Return -1 End Select ElseIf ToUnit = FromUnit Then result = Size End If Return result End Function #End Region
|
|
« Última modificación: 18 Septiembre 2013, 15:34 pm por EleKtro H@cker »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Librería de Snippets en C/C++
« 1 2 3 4 »
Programación C/C++
|
z3nth10n
|
31
|
25,890
|
2 Agosto 2013, 17:13 pm
por 0xDani
|
|
|
[APORTE] [VBS] Snippets para manipular reglas de bloqueo del firewall de Windows
Scripting
|
Eleкtro
|
1
|
4,084
|
3 Febrero 2014, 20:19 pm
por Eleкtro
|
|
|
Librería de Snippets para Delphi
« 1 2 »
Programación General
|
crack81
|
15
|
21,166
|
25 Marzo 2016, 18:39 pm
por crack81
|
|
|
Una organización en Github para subir, proyectos, snippets y otros?
Sugerencias y dudas sobre el Foro
|
z3nth10n
|
0
|
3,074
|
21 Febrero 2017, 10:47 am
por z3nth10n
|
|
|
índice de la Librería de Snippets para VB.NET !!
.NET (C#, VB.NET, ASP)
|
Eleкtro
|
7
|
6,545
|
4 Julio 2018, 21:35 pm
por Eleкtro
|
|