我使用标准的Microsoft.Office.Interop.Excel将1200 X 800矩阵(indexMatrix)导出到excel文件.该应用程序工作,只是它真的非常慢(即使对于100 x 100矩阵).我还通过TextWriter导出文本文件,它几乎可以立即工作.有没有办法更快地导出到excel文件?
这是我的代码:
Excel.Application xlApp=new Excel.Application();
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
//xlApp = new Excel.ApplicationClass();
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
for (int i = 0; i < 800; i++) //h
for (int j = 0; j < 1200; j++)
xlWorkSheet.Cells[i+1,j+1] =indexMatrix[i][j];
xlWorkBook.SaveAs("C:\\a.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
releaseObject(xlWorkSheet);
releaseObject(xlWorkBook);
releaseObject(xlApp);
MessageBox.Show("Excel file created , you can find the file c:\\csharp-Excel.xls");
Run Code Online (Sandbox Code Playgroud) 是否有一个功能可以做到这一点
DateTime1.minute=50
Run Code Online (Sandbox Code Playgroud)
如果我加10分钟,它会增加1小时,并将分钟设置为0,同样如此
我希望我自己的pascal代码被执行它还有一些使用文件和其他复杂的函数就像Delphi代码我可以这样做
我想创建一个表来显示这样的东西:
________
|__|__|__|
|__|__|__|
Run Code Online (Sandbox Code Playgroud)
所有盒子都需要均匀分割,底行中间的盒子将有一个非常大的图像,将被强制缩小.这是我目前的XML布局,但我最终得到了这样的布局:
________
|_|____|_|
|_|____|_|
Run Code Online (Sandbox Code Playgroud)
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:stretchColumns="1">
<TableRow>
<TextView
android:layout_column="1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="1"
android:text="Unused"
android:padding="3dip" />
<TextView
android:layout_column="2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="1"
android:text="Top Center"
android:padding="3dip" />
<TextView
android:layout_column="3"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="1"
android:text="Unused"
android:padding="3dip" />
</TableRow>
<TableRow>
<TextView
android:layout_column="1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="1"
android:text="---->" />
<ImageView
android:id="@+id/mainImg"
android:layout_column="2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="1"
/>
<TextView
android:layout_column="3"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="1"
android:text="<----" />
</TableRow>
</TableLayout>
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
是否有任何工具或浏览器插件可以让我在样式表中查看当前在页面上活动/使用的所有样式?
简短的背景故事:我从之前的UI设计师那里继承了一个巨大的样式表.它曾经应用于网站上的每个页面.之后,除了登录页面之外,整个网站样式都重做了.所以现在我有两个巨大的样式表,一个用于登陆页面,另一个用于其他一切.我想只将一个的相关部分合并到另一个中.如果有一种比我提议的更好的方式,我肯定对其他解决方案持开放态度.
谢谢.
我有一个NSTtimer实现,它的工作正常.我还具有连接到所述时间间隔的参数UISlider的iPhone.然而,当我改变它的价值NSTimer仍然在原来的时间间隔不会得到更新运行.我如何实现NSTimer并将其更改为时间间隔作为我的UISlider更改值.以下是我正在使用的线路NSTimer.
[NSTimer scheduledTimerWithTimeInterval:mySlider.value
target:self
selector:@selector(myMethod)
userInfo:nil
repeats:YES];
Run Code Online (Sandbox Code Playgroud)
我希望它不断更新它的时间间隔与值UISlider.
我有相当大的哈希(大约10M键),我想从中删除一些元素.
我通常不喜欢使用delete或splice和我拉闸复制我想要什么,而不是删除的内容,我不知道.但是这一次,由于哈希是真正的大,我想我会直接将它删除.
所以我做的是这样的:
foreach my $key (keys %hash) {
if (should_be_deleted($key)) {
delete($hash{$key});
}
}
Run Code Online (Sandbox Code Playgroud)
它似乎工作正常.但是..如果我想在迭代它们之前删除一些元素怎么办?我将通过例子解释:
foreach my $key (keys %hash) {
if (should_be_deleted($key)) {
delete($hash{$key});
# if $key should be deleted, so does "$key.a", "kkk.$key" and some other keys
# I already know to calculate. I would like to delete them now...
}
}
Run Code Online (Sandbox Code Playgroud)
我想一些可能的解决方案 - 比如检查是否有键仍然存在,如在环或第一循环的第一步,创建密钥的列表中删除(并没有实际删除它们),则实际删除的另一个循环.
你对此有何看法?
UPDATE
似乎双通道方法已达成共识.但是,在第一遍中我仔细检查已经标记为删除的密钥,这是非常低效的.这有点递归,因为我不仅检查密钥,还计算应删除的其他密钥,尽管它们已经由原始密钥计算.
也许我需要使用一些更动态的数据结构来迭代密钥,这将动态更新?
这可能吗:
我在以下目录中使用带有usercontrols的Web应用程序:C:\ Users\Visual Studio 2010\WebSites\MS\Controls
我的计算机上有另一个Web应用程序,位置如下:C:\ Users\Visual Studio 2010\WebSites\TestSite
TestSite可以从不同的目录加载userwebcontrol.
我在TestSite中尝试了以下内容:
myUserControl = (UserControl)LoadControl("../WebSites/CMS/Controls/test.ascx");
Run Code Online (Sandbox Code Playgroud)
但我得到错误:虚拟路径'/WebSites/MS/Controls/test.ascx'映射到另一个应用程序,这是不允许的.
在开始时尝试使用〜但是提出了'/TestSite/MS/Controls/Editor.ascx'文件不存在.
可以这样做吗?
有没有办法检测类中函数的参数数量?
我想做的是以下内容.
$class = 'foo';
$path = 'path/to/file';
if ( ! file_exists($path)) {
die();
}
require($path);
if ( ! class_exists($class)) {
die();
}
$c = new class;
if (num_function_args($class, $function) == count($url_segments)) {
$c->$function($one, $two, $three);
}
Run Code Online (Sandbox Code Playgroud)
这可能吗?
我使用W3C验证器收到以下警告:
使用实验性功能:HTML5一致性检查器
究竟是什么意思?我不能指望这个验证器?