Compressing A Stream Rather Than A File?
Apr 3, 2010
I've downloaded ZLIB.NET from here and the example VB.NET code they provide works fine. It's very short so I'll paste it here for reference:
vb
Public Shared Sub CopyStream(ByRef input As System.IO.Stream, ByRef output As System.IO.Stream)
Dim num1 As Integer
[Code]...
Note that the CopyStream() subroutine is identical. The problem is that although decompressing seems to work fine, compressing does not. If I take a byte stream, compress it and then decompress it using the above code, I get a truncated version of the original stream (as an example, a 360485 byte stream becomes 311518 bytes). The resulting bytes match the original stream up until the point where it's cut off.
The only information I can find about streams being truncated is due to missing stream.Flush() commands but the output stream is flushed in the CopyStream() subroutine.
View 5 Replies
ADVERTISEMENT
Jun 4, 2010
In my contact manager program I have been storing information by reading and writing comma delimited files for each individual contact, and storing notes in a file for each note, and I'm wondering how I could go about shrinking them all into one file effectively. I have attempted using data entry tools in the visual studio toolbox and template class, though I have never quite figured out how to use them. What would be especially convenient is if I could store data as data type IOwner (a class I created) as opposed to strings.
I'd also need to figure out how to tell the program what to do when a file is opened (I've noticed in the properties how to associate a file type with the program though am not sure how to tell it what to do when it's opened).
Edit:
How about rephrasing the question: I have a class IContact with various properties some of them being lists of other class objects. I have a public list of IContact. Can I write Contacts as List(Of IContact) to a file as opposed to a bunch of strings?
Second part of the question: I have associated .cms files with my program. But if a user opens the file, what code should the program run through in an attempt to deal with the file? This file is going to contain data that the program needs to read, how do I tell it to read a file when the program is opened vicariously because the file was opened?
View 2 Replies
May 25, 2012
in an winForm app in VS2010 win 7 compiling to x86, I try to do what Alvas.Audio seems to work. See (c# ex: [URL] for reference.
Dim data() As Byte = wr.ReadData(second * i, second)
The result give me data.length()=0. I do not have any exception, I can read format from it and whatever reader I use I got this problem.EDIT : After some tests, it seems like the uncompressed file I create in the first step (in PCM format, with .wav extension) can not be recognized by the Alvas.audio library for the second step. I must miss something around Audio file markups or something alike.
Here is the code that might be the source (basically this is step 1):
Dim functOut As String = String.Empty
Dim wr As Alvas.Audio.IAudioReader = Nothing
Dim fs As IO.FileStream = Nothing
[code]....
How can I write the resulted stream to be sure I can read it again later?
View 1 Replies
May 31, 2011
I don't know whether it is simple or not because i am new to programming. my requirement is : In my vb.net winform application, the filenames of the files present in "D:Project" willbe displayed in DataGridView1 control. Now I want to load these files one after another into memory stream buffer and add the headers("ID","Name","Class") to the content in the file. Then I want to save these files in "C:" with "_de" as suufix to the filename i.e.,sample_de.csv.
View 1 Replies
Aug 22, 2011
I am developing an application where the user saves a chosen RTF file to a SQL Server database. My problem is that if the file contains an image, the binary becomes too big. Although the database has enough space, it's not very nice to use up space you could save.... To give an example:
[Code]...
View 2 Replies
Aug 22, 2011
I am developing an application where the user saves a chosen RTF file to a SQL Server database. My problem is that if the file contains an image, the binary becomes too big. Although the database has enough space, it's not very nice to use up space you could save....To give an example:
RTF binary with two text lines ("ABC / efg") = 156 Bytes
Same 2 lines + 32 kB image = 2.2MB
I am still confused on which is the best way to solve this. I have thought about creating an "images" table in my database and using a markup to fetch the image when the file is loaded.
View 8 Replies
Feb 9, 2009
I am writing a backup program that zips files. Using some sample code I have the following that creates a zip file. Problem is it does not get any subdirectories or files. Where am i going wrong?
Dim azFileNames() As String = Directory.GetFiles(SourceFolder)
Dim objCrc32 As New Crc32()
Dim zipStream As ZipOutputStream
[CODE]...
Alternativley, there is another component to the zipping dll that I could probably bypass the above altogether. It is: FZ.CreateZip(DestFile, SourceFolder, True, "", "") Where DestFile is (Output stream as system.io.stream). I'm trying to read all the files, directories, sub dir and files, etc from a specific location, let's say 'My Documents' into Destfile in which the FZ.CreateZip zips the file. FZ is FastZip which is from icsharpcode.net. They have c# examples, but that's greek to me. I'm trying to just learn VB!
View 6 Replies
Jun 9, 2010
If i use a stream to modify few bytes in a file without changing the total number of bytes
does the stream rewrite all the file even if just few bytes have been replaced?
View 1 Replies
Mar 10, 2010
Is there anyway to take a static stream reader, and switch it to another text file based on the user changing the file?
View 1 Replies
Jun 21, 2010
i would like to ask is there anyway to read a txt file with UTF-8 encoding using streamreader or filestream. the txt file is contain some extended ASCII that makes me cannot read the characters properly. I hav tried Encoding.ASCII.GetString(Encoding.UTF8.GetBytes()) but still it return wrong character when it's reading extended ASCII code.
View 2 Replies
May 5, 2011
Im making a desktop player for a online web radio, and for the program I wanna make it show all the stream info. Like the stream name, and such. However I dont know how to do this? I looked everywhere
The server url is setup like this "[URL]" And it has all the stream info and that there. So is there a way I can get the info from there onto like say a label? Live updates btw.
View 1 Replies
Nov 16, 2010
I agree that the best way to shorten the ViewState is to disable it on the ASP.Net controls that don't need it. Keeping it small from the beginning is a great habit.I have also heard that it is already compressed (although can be true... there are ways of compressing it even more, has described in this Stack Overflow question).
My question here is not if it should be compressed... is: when should ViewState be compressed?If we have a ViewState of 410 characters it will weight 410 bytes in a page, while a ViewState of 13.843 characters equals 13.5 KB.
13.5KB is a considerable weight already. And if I compress a CSS file that height 10KB, I think it is also worthy compressing a ViewState of 13.5KB, even if that means a little extra "thinking" on the server.
But is 410 bytes of ViewState worth the extra processing on the server?At what point is it worth compressing?
View 2 Replies
May 27, 2011
I am using CGZipLibrary.dll in my code for zipping the files. A .zip file is being created but the file is not getting compressed. The original file and the .zip file are of same size.
View 1 Replies
Jun 24, 2009
I have this code for compressing datasets into files:
Using fs As New System.IO.FileStream(flnm, IO.FileMode.OpenOrCreate, IO.FileAccess.Write, IO.FileShare.Write)
Using zStrm As New System.IO.Compression.GZipStream(fs,
[code].....
View 1 Replies
Oct 26, 2011
I've written a backup utility for one of our applications; this process involves coping sub directories of a specified base folder and an unknown number of folders within folders. I've got the process down to copy the files and directories pretty easily but I want to compress the folder structure to keep the space needed as small as possible.I've found a few utilities that work well for getting the files from the specified base folder but not any of the folders that exist in the specified start directory.The one utility I found required me to recursively search directories for the variably named directories and I am hoping for a simple switch that can be used that says base folder/file and sub directories.
View 1 Replies
Aug 16, 2009
compressing sql server data (on the fly) from a select statement when accessed across the internet. i.e data is stored in Sql Server Express on a remote computer (1) connected via an Internet VPN. An application on a remote computer (2) on the same VPN sends a select statement to the SQL server machine.The data would then be compressed at computer (1) sent across the VPN and decompressed at computer (2)
The Reason is, broadband speeds are not the greatest in Australia, and it would reduce the size of the data transmitted, resulting in faster response, as the compression/decompression is done at each machine
View 1 Replies
May 29, 2011
i am making a game in which the file stream gets a certain file(lets say a.txt) and it reads it, if it has certain values stored in the file it returns boolean(this is a function), then a sub procedure writes to the file using a streamwriter and a filestream using the same file. I am having problems, sometimes visual basic says that another process is using the file, this is before i closed the filestreams and the streamwriter or streamreader, then it gives me errors when i close the files, it tells me that it can't access a file that is already closed, i thought the filestream gets the file and lets the streamreader or streamwriter read or write to the filefound out the problem?
View 2 Replies
May 30, 2009
is it possible to report the percentage of file written by a file stream wile it is writing a large file?I am using a code like this one to write a large file
Using Fs As System.IO.FileStream = System.IO.File.Create(FolderPath)
Dim bf As New BinaryFormatter()
bf.Serialize(Fs, data)
End Using
View 1 Replies
Apr 2, 2009
I am need of creating a windows executable that contains a compression of certain other binary files, (executables etc)
It is a basic form with a button, on press of the button, it has to decompress certain binary files( some other executables too) into a certain path, the decompression happens based on some specific conditions and not always., This is the reason I could not use WinZIP to create the EXE.
View 3 Replies
Apr 8, 2009
How could I go about doing this if I can? Storing files into an application compressing them and then extracting them?
View 1 Replies
Apr 1, 2010
How do you do it? I've looked it up everywhere and failed to find anything. If there is a previous post I missed that discussed this, post it as a comment and forgive me. <scenerio>Friend and I are working on a VB project. We want to export and inport folders of information, and to do so neatly, we wanted to compress the files in the format we made for our program, then be able to decompress it within the program as well. If theres any other way to do this without compression and decompression
View 2 Replies
Jul 5, 2010
I am developing a VB.NET 2008 application, consisting of a main EXE application and several resource DLLs.
I need two functions for the DLL:
1) one function to get a list of all files in the resources of the DLL.
2) one function to return 'by name' a resource file as a System.IO.Stream type.[code]...
View 8 Replies
Jan 31, 2011
I am trying to read a xml file (from a stream) like the one below. I need to read the xml element "recipientPhone" first,then I could read element "contents" so that I could save base64 data as file with the name coming from recipientPhone.I am using while xmlReader.read() to read the xml, is there a way that I could read element "recipientPhone" before "contents"?
xml sample:
<fax>
<clientInfo>Attachments: 2</clientInfo>
<contents><contentType>0</contentType>
<data>data1</data>
[code].....
View 4 Replies
Jan 17, 2010
I'm trying to use the
OpenSqlFilestream
Instruction but my code did not recognise it What dll i have to load in order to use it?
View 2 Replies
Oct 28, 2011
I have an embedded DLL in my app and I need to write it to the filesystem at runtime. I have this so far:
Dim _assembly As Assembly = Assembly.GetExecutingAssembly()
Dim _rawstream As Stream = _assembly.GetManifestResourceStream("MyFile.dll")
I just need to write _rawstream to a file now.
EDIT: This has to be .NET Framework 2 and CopyTo does not exist
View 3 Replies
Mar 25, 2009
I am compressing a dataset converted to XML using the GZipStream class added in 2.0. There are a few things bothering me about this. Here's the code I am using to decompress the XML file:
Using inFile As New System.IO.FileStream(flnm, IO.FileMode.Open, IO.FileAccess.Read, IO.FileShare.Read)
Dim zStrm As New System.IO.Compression.GZipStream(inFile, IO.Compression.CompressionMode.Decompress)
Dim buff(999) As Byte
[CODE]...
This seems inordinately awkward, as I am taking the stream, reading it out into byte buffers, then writing those byte buffers to a memory stream that is then passed to the dataset.ReadXml() method. The reason for this seems to have to do with what is happening in the line colored red. That line is adding a closing > onto the end of the stream. Without that, ReadXml complains about an unclosed dataset. I found out that the > was missing by writing the stream into a string and pasting the string into WordPad. Without that missing >, it appears that I wouldn't need to be using that memory stream at all, and could simply pass in the GZipStream to ReadXML, but as far as I can tell, it's impossible to look at the GZipStream to be sure that the > is not there, and it may be impossible to add it (I haven't tried).
So why is the > missing? Here's the code used to create the file that is being read into the filestream in the above
VB Using ms As New System.IO.FileStream(flnm, IO.FileMode.OpenOrCreate, IO.FileAccess.Write, IO.FileShare.Write)
Dim zStrm As New System.IO.Compression.GZipStream(ms, IO.Compression.CompressionMode.Compress)
ds.WriteXml(zStrm, XmlWriteMode.WriteSchema)
End Using
The real kicker to all of this is that while I was dissecting the first chunk of code, I added a line to check for cnt<1000. My intention was to see the last buffer that was being written into the memory stream to see whether the final > was actually there, or not. To my surprise, I reached the cnt<1000 twice. That means that one read did not read a full 1000 bytes, but read only 675. The next three or four reads were a full 1000 bytes, then the final read was just a few hundred bytes. It is my understanding that Read will return a full buffer if there are that many bytes left to read, and there were, so why did it return only a partial buffer? That suggests that there might be a hole in my XML, though with a half meg file, it's a bit much to read through it looking for something missing. However, the XML that was returned was turned into a dataset that I then merged into some existing data using code that has been working with uncompressed XML files, and I got an error that I should never have received. That may indicate that the XML was, in fact, missing something, though I will have to study the matter further to figure out whether or not that is the case. My major question has to do with the missing '>' at the very end of the file.
View 2 Replies
Jun 2, 2011
I have a filename(including it's path) in a string. Now i want to load this .csv file into memory stream. ex: Dim filename as string="C:UsersDesktopabc.csv"
View 2 Replies
Jul 5, 2010
I am developing a VB.NET 2008 application, consisting of a main EXE application and several resource DLLs.
I need two functions for the DLL:
1) one function to get a list of all files in the resources of the DLL.
2) one function to return 'by name' a resource file as a System.IO.Stream type.
NOTE: The files will not be "Embedded Resource" (this doubles the size of the DLL), so I think cannot use 'GetManifestResourceStream'.
[Code]...
View 1 Replies
Jul 6, 2010
I am developing a VB.NET 2008 application, consisting of a main EXE application and several resource DLLs.I am trouble with two functions for the DLL:
1) one function to get a list of all files in the resources of the DLL.
2) one function to return 'by name' a resource file as a System.IO.Stream type.
NOTE: The files will not be "Embedded Resource" (this doubles the size of the DLL), so I think cannot use 'GetManifestResourceStream'.
I currently use:
Return New System.IO.MemoryStream(My.Resources.MyFileName)
but I want it to be called by name.I am adding the resources using the VS 2008 "Resources" tab, from the My Project screen, I'm not manually editing Resources.resxAs I said before, it works with:
Return New System.IO.MemoryStream(My.Resources.MyFileName)
but I need to get the resources by name, which also works by using
GetMAnifestResourceStream
but this requires to set the resources Build Action to "Embedded Resource", which doubles the size of my DLL file.I currently use "None" as Build Action, but I can use any Build Action that does not increase the file size more than the actual resources size.
View 2 Replies
Feb 7, 2011
why this code doesn't work:[code]....
View 11 Replies