假设出于某些不正当的原因,您希望显示UTF8String的原始字节内容.
var
utf8Str : UTF8String;
begin
utf8Str := '€?????ó???';
end;
Run Code Online (Sandbox Code Playgroud)
(1)这不行,它显示可读形式:
memo1.Lines.Add( RawByteString( utf8Str ));
// output: '€?????ó???'
Run Code Online (Sandbox Code Playgroud)
(2)然而,这确实"有效" - 请注意连接:
memo1.Lines.Add( 'x' + RawByteString( utf8Str ));
// output: 'x€ąćę?‚?„???›????'
Run Code Online (Sandbox Code Playgroud)
我理解(1),虽然编译器强制转换为UnicodeString似乎阻止了原样显示RawByteString var.但是,为什么行为会在(2)中发生变化?
(3)陌生人仍然 - 让我们扭转连接:
memo1.Lines.Add( RawByteString( utf8Str ) + 'x' );
// output: '€?????ó???x'
Run Code Online (Sandbox Code Playgroud)
我一直在阅读Delphi中新奇的字符串类型,并认为我理解它们是如何工作的,但这是一个难题.
所以我在Linux中,当你从命令行执行它时,我希望有一个程序接受参数.
例如,
./myprogram 42 -b -s
那么程序会将该数字42存储为int并执行某些代码部分,具体取决于它是什么参数-b或-s.
如何使用AppleScript查找Mac上安装的OSX版本?我想以编程方式安装应用程序,并根据版本运行不同的pkg文件.
谢谢
我正在使用git并在Python中进行开发(尽管这显然与使用git管理的任何其他数据相关).我怎么告诉git我不想看到.pycpython中的所有文件git status?
如何在WAMP服务器上的phpMyAdmin中更改root用户的密码?因为我错误地更改密码后,我被锁定在phpMyAdmin之外.
在调试SQL语句时,如果我在使用输出大量结果的mysql命令行时意外执行查询(即使查询本身在合理的时间内执行),我知道停止无休止的输出流的唯一方法是CTRL -C.
不幸的是,这让我回到shell中,迫使我登录并再次选择数据库.
为了避免这种情况,我开始使用--sigint-ignore选项运行mysql,以便忽略 CTRL-C.
现在我想要一种中断那些长查询输出的方法.
是否有键盘快捷键可以执行此操作?
ASP.NET MVC控制器类中的UpdateModel有很多重载.
其中一些是通用的,有些则不是.
显然我想使用通用版本,但我不知道它实际上对我有什么影响?UpdateModel不是一种使用反射填充属性的方法.
那么这有什么区别:
UpdateModel<ContestModel>(model);
Run Code Online (Sandbox Code Playgroud)
与
UpdateModel(model);
Run Code Online (Sandbox Code Playgroud)
如果它知道类型,反射会更快一点 - 还是有另一个原因?
我意识到我可以用一个小的C或Ruby程序来做这个,但我希望我的脚本尽可能少的依赖.
鉴于这一点,如何在OS X上的bash脚本中进行日期数学计算?我见过一个帖子(在另一个网站上)有人做了以下事情:
date -d "-1 day"
但这似乎不适用于OS X.
附录:
有几个人评论并回应说Ruby,Python,Perl等是OS X的标准配置.我熟悉这三种语言,并且可以轻松编写一个可以满足我想要的脚本.事实上,我已经有了用Ruby编写的脚本.
所以也许我应该澄清"外部依赖"的含义.我的意思是,我不希望我的bash脚本必须调用其外部的任何其他脚本.换句话说,我希望它使用OS X的vanilla安装中可用的一些实用程序,并且已经在路径上.
但是,它看起来不可能,所以我将不得不使用我的外部依赖:Ruby脚本.
您应该何时安装到GAC中,何时不应该安装?(我指的是,当他们购买我们的产品时,在客户的机器上安装).
我有一个仅用于我的一个应用程序(GAC或无GAC)的程序集?
我有一个所有应用程序共享的程序集(GAC或无GAC)?
我的所有应用程序都可能使用不同版本的程序集(GAC或no-GAC)?
这是三种情况......但我相信还有更多.我不一定只回答这三个问题.
类似的问题:使用GAC有哪些优缺点?
我正在注册我班上的一个事件,并且按照惯例,我很懒,只使用Visual Studio 2008 Pro中内置的自动完成功能,它自动创建委托创建及其相关方法.
public abstract class FooBase
{
protected event EventHandler<MyValueChangedArgs> MyValueChanged;
protected FooBase()
{
MyValueChanged +=
new EventHandler<MyValueChangedArgs>(HandleMyValueChanged);
}
private void HandleMyValueChanged(object sender, MyValueChangedArgs e)
{
// Some handling logic
}
}
Run Code Online (Sandbox Code Playgroud)
通常我不会三思而后行Visual Studio为我生成事件处理程序,但后来我收到了Refactor的推荐!专业"删除冗余代表创建".建议结果如下:
public abstract class FooBase
{
protected event EventHandler<MyValueChangedArgs> MyValueChanged;
protected FooBase()
{
MyValueChanged += HandleMyValueChanged;
}
private void HandleMyValueChanged(object sender, MyValueChangedArgs e)
{
// Some handling logic
}
}
Run Code Online (Sandbox Code Playgroud)
在什么情况下委托创建是多余的,委托创建何时适当?
谢谢.
.net ×2
macos ×2
applescript ×1
arguments ×1
asp.net-mvc ×1
bash ×1
c ×1
c# ×1
command-line ×1
date-math ×1
delegates ×1
delphi ×1
delphi-2009 ×1
gac ×1
git ×1
install ×1
linux ×1
model ×1
mysql ×1
phpmyadmin ×1
unicode ×1
utf-8 ×1
wampserver ×1