问题列表 - 第6035页

如何从Perl的STDOUT中取消联合效果?

当我运行这个:

open FP, ">xyz";

my $file = *FP;

printf $file "first\n";

$file = *STDOUT;

printf $file "second\n";

open $file, ">abc";

print $file "third\n";

print STDOUT "fourth\n";

print FP "fifth\n";
Run Code Online (Sandbox Code Playgroud)

"第四"印刷品不是STDOUT,而是"abc".

STDOUT与FP的不同之处在于其表现如预期.

我究竟做错了什么?我不明白的是什么?

perl

2
推荐指数
2
解决办法
2865
查看次数

什么是datetime2?

我已经在MSMS 2008的INSERT语句中得到了这个

System.Data.SqlClient.SqlException:将datetime2数据类型转换为日期时间数据类型会导致超出范围的值.

.net sql entity-framework sql-server-2008 c#-3.0

27
推荐指数
2
解决办法
3万
查看次数

是否有JDK类来进行HTML编码(但不是URL编码)?

我当然熟悉这些java.net.URLEncoderjava.net.URLDecoder课程.但是,我只需要HTML风格的编码.(我不想' '替换'+'等).我不知道在类中构建的JDK只会进行HTML编码.有吗?我知道其他选择(例如,Jakarta Commons Lang'BtringEscapeUtils',但我不想在我需要它的项目中添加另一个外部依赖项.

我希望在最近的JDK(又名5或6)中添加了一些我不知道的JDK.否则我必须自己动手.

html java html-encode

31
推荐指数
4
解决办法
5万
查看次数

你能从Application.DoEvents()中捕获异常吗?

我在VS2005中运行的程序和直接运行可执行程序之间遇到了一个奇怪的区别.实质上,当在Application.DoEvents()调用内的方法中抛出异常时,在Visual Studio中运行时可以捕获异常.运行已编译的可执行文件时,不会捕获异常并且程序崩溃.

这是一些简单的代码来演示这个问题.假设标准winforms样板和两个按钮和一个标签.

要运行此操作,请单击开始按钮以开始10秒计数.在10秒钟之前,按下中止按钮.并且会抛出异常DoEvents().应该抓住例外.这只发生在Visual Studio中运行时.

    private void StartButton_Click(object sender, EventArgs e) {
        DateTime start = DateTime.Now;

        try {
            while (DateTime.Now - start < new TimeSpan(0, 0, 10)) {
                this.StatusLabel.Text = DateTime.Now.ToLongTimeString();
                Application.DoEvents();
            }

            MessageBox.Show("Completed with no interuption.");
        } catch (Exception) {
            MessageBox.Show("User aborted.");                
        }
    }

    private void ButtonAbort_Click(object sender, EventArgs e) {
        throw new Exception("aborted");
    }
Run Code Online (Sandbox Code Playgroud)

我希望能够捕获这些异常.有没有办法使它工作?

更新:

我愿意考虑除了重新引入头痛的方法之外的其他方法DoEvents().但我还没有找到一个似乎更好的工作.我的情况是,我有一个长时间运行的循环,它控制着一些科学仪器,经常需要等待温度稳定或什么的.我想让我的用户能够中止进程,所以我有一个中止按钮,只是抛出一个自定义异常,我打算在最初启动进程的站点捕获.这似乎是一个完美的解决方案.除了由于某种原因它不起作用的事实.

如果无法实现这一点,那么有更好的方法吗?

更新2:

当我将它添加为Main()的第一行时,这使它作为可执行文件工作,但不在VS中,因此情况相反.疯狂的是,它似乎是一个无操作.我能理解这是怎么回事.

Application.ThreadException += delegate(
        object sender, 
        System.Threading.ThreadExceptionEventArgs e
    ) 
    { throw e.Exception; }; …
Run Code Online (Sandbox Code Playgroud)

c# exception-handling exception doevents visual-studio

2
推荐指数
1
解决办法
2334
查看次数

iPhone应用程序中采样声音片段的合法性

有没有人知道使用电影中的采样声音片段(特别是口语单词)作为iPhone应用程序的一部分的合法性?

iphone audio

7
推荐指数
2
解决办法
3638
查看次数

寻找创造性的设计模式

我正在尝试找到一种可以用来简化某些对象构造的设计模式.

基于传入参数,一个自定义类,我将从System.Windows.Forms.Control类创建各种继承器.

例如,如果自定义类的一个成员设置为'ChkBox',我希望我的类返回一个System.Windows.Forms.CheckBox,或者如果该成员是'List',我希望我的类返回一个ComboBox.

public CustomClass()
{
    FieldType type;
}
Run Code Online (Sandbox Code Playgroud)

GetControl(CustomClass type);
Run Code Online (Sandbox Code Playgroud)

常见的是,我想要创建的所有类都具有Control作为它的基类.考虑到这一点,我想有一种方法可以只在一个地方设置基类的成员.

你知道我可以用来解决这个问题的任何设计模式吗?

c# design-patterns

3
推荐指数
1
解决办法
325
查看次数

空合并赋值运算符?

如果C#允许一个?? =运算符,那将是非常好的.我发现自己经常写下面的内容:

something = something ?? new Something();
Run Code Online (Sandbox Code Playgroud)

我宁愿这样写:

something ??= new Something();
Run Code Online (Sandbox Code Playgroud)

思考?新的语言扩展总是存在争议的本质.

c# language-features operators null-coalescing-operator

21
推荐指数
2
解决办法
5246
查看次数

如何将NSInteger转换为二进制(字符串)值

我试图弄清楚如何将NSInteger(例如56)转换为NSString,它是原始(int)值的二进制表示.也许有人知道一种格式化技术可以接受56并在Objective C中返回"111000".谢谢大家.

binary objective-c nsstring

13
推荐指数
2
解决办法
2万
查看次数

在大型数据集上执行LINQ表达式时如何报告进度

如果我需要使用LINQ生成相当大的数据集,并且可能要花一些时间(例如几秒钟),并且我需要(希望)生成有关使用情况的反馈信息,是否有简单/首选的方法去做这个?

例如,假设我有1000辆汽车的列表A和100​​0辆卡车的列表B,并且我想选择所有可能的有序(汽车,卡车)对,其中car.color == truck.color链接如下:

var pairs = from car in A 
            from truck in B 
            where car.color==truck.color 
            select new {car, truck};
Run Code Online (Sandbox Code Playgroud)

现在,将在某些时候将其评估为一组嵌套的foreach循环。我希望能够报告完成的%%年龄,并且可以理想地更新进度条或其他内容。

编辑:查询后,我将结果存储在一个成员变量中,像这样的列表(这将强制执行查询):

mPairs = pairs.ToList();
Run Code Online (Sandbox Code Playgroud)

我这样做是因为我在后台工作线程中执行此操作,因为我不希望UI线程冻结,因为它会按需评估UI线程上的LINQ表达式(这在Silverlight BTW中)。因此,为什么我要报告进度。UX基本上是这样的:

  1. 用户将项目拖到工作区上
  2. 然后,引擎在后台线程中启动,以确定到工作空间上所有其他项目的(许多)连接可能性。
  3. 在引擎计算期间,UI不允许新连接,并且报告进度以指示新项目何时将“可连接”到其他项目(尚未使用的所有可能的连接路径已通过LINQ确定)。
  4. 当引擎完成计算(查询)时,该项目可在UI中连接,并且可能的连接路径存储在本地变量中以备将来使用(例如,当用户单击以连接该项目时,所有可能的路径将基于添加时的计算结果)

(删除项目时必须执行类似的过程)

linq

5
推荐指数
1
解决办法
3195
查看次数

我如何从c#中的字符串中获取位?

如果我有以下字符串"Blue Box",我怎么能得到构成c#中字符串的位以及我将它存储在哪个数据类型中.

如果我只做字母"o",我得到111作为字节,111作为位.是斩掉0,如果我做"oo",我在字节数组中每个o得到111,但对于这些位,我得到值28527.为什么?

c#

6
推荐指数
3
解决办法
1万
查看次数