I need to save a compressed byte stream in to a database table, the problem is that whenever i open the file, winZip/winRar/windows reports that the archive is corrupt. I've tried setting leavOpen on the ZipArchive (as suggested in some other posts) but it make no difference.
any ideas?
private byte[] Compress(byte[] pData, string pFileName)
{
CompressionSettings lSettings = new LzmaSettings();
using (MemoryStream lMemoryStream = new MemoryStream()) {
using (ZipArchive lArchive = new ZipArchive(lMemoryStream, ZipArchiveMode.Create, false, null)) {
ZipArchiveEntry lAttachment = lArchive.CreateEntry(pFileName, lSettings);
using (var lAttachmentStream = lAttachment.Open()) {
using (var lStreamWriter = new StreamWriter(lAttachmentStream)) {
lStreamWriter.Write(pData);
}
}
}
return lMemoryStream.ToArray();
}
}
The ScaleFactor property of the WorksheetPageSetup class requires a System.Windows.Size of the WindowsBase, Version=4.0.0.0 assembly.
The WindowsBase assembly does not seem to exist in .Net 4
Where can I find this assembly?
Hello. I am trying to set a default height using the following code:
worksheet.DefaultRowHeight = new RowHeight(UnitHelper.PointToDip(13),true);
But it is not working. How can I set it up? Thank you.
MemoryStream memStream =
new
MemoryStream();
ZipPackage Package = ZipPackage.Create(memStream);
foreach
(MyItem item
in
myCollection) {
Stream stream =
default
(Stream);
byte
[] bData = GetPdfBytes(item);
//Average size is {Length=3150000}
stream =
new
MemoryStream(bData);
Package.AddStream(stream,
string
.Format(
"MyFileName_{0}.pdf"
, item.UniqueID), Telerik.Web.Zip.CompressionType.Default, item.Date);
//Out of memory exception here
//offset: 65855158, Headers: 23, ZipPackageEntries: 23
}
//Code from Telerik Samples
SendZipToClient(memStream, Package);
Hi,
Is it possible to add text with outline (halo) ?
/Brian
Hi,
I have Performance Issues with the Excel spreadprocessing export. To populate a 1000x1000 matrix takes 70 seconds.
Can you please have a look? Thank you!
namespace WpfApplication1
{
public partial class MainWindow : Window
{
private readonly int SIZE = 1000;
public MainWindow()
{
InitializeComponent();
WorkbookFormatProvidersManager.RegisterFormatProvider(new XlsxFormatProvider());
test();
}
public object[,] populateData()
{
var res = new object[SIZE,SIZE];
for(int row=0;row<SIZE;row++)
for(int col=0;col<SIZE;col++)
res[row,col] = row+col;
return res;
}
public void test()
{
Stopwatch s = Stopwatch.StartNew();
var sensorDataTable = populateData();
s.Stop();
Console.WriteLine(string.Format("populate {0} items: {1}ms", SIZE*SIZE, s.ElapsedMilliseconds));
s = Stopwatch.StartNew();
Telerik.Windows.Documents.Spreadsheet.Model.Workbook workbook = new Telerik.Windows.Documents.Spreadsheet.Model.Workbook();
using (new UpdateScope(workbook.SuspendLayoutUpdate, workbook.ResumeLayoutUpdate))
{
using (new UpdateScope(
() => { workbook.History.IsEnabled = false; },
() => { workbook.History.IsEnabled = true; }))
{
workbook.Sheets.Add(SheetType.Worksheet);
Telerik.Windows.Documents.Spreadsheet.Model.Worksheet worksheet = workbook.ActiveWorksheet;
for(int row=0;row<SIZE;row++)
for(int col=0;col<SIZE;col++)
worksheet.Cells[row, col].SetValue(sensorDataTable[row, col].ToString());
worksheet.Columns[worksheet.UsedCellRange].AutoFitWidth();
}
}
String filename = @"c:\test.xlsx";
IWorkbookFormatProvider formatProvider = WorkbookFormatProvidersManager.GetProviderByName("XlsxFormatProvider");
using (var stream = new FileStream(filename, FileMode.CreateNew, FileAccess.ReadWrite))
{
formatProvider.Export(workbook, stream);
}
s.Stop();
Console.WriteLine(string.Format("create and save excel: {0}ms", s.ElapsedMilliseconds));
}
}
}