我怎么能在Ruby上做到这一点?
puts some_method("ò")
# => "ò"
Run Code Online (Sandbox Code Playgroud)
换句话说,将重音字符转换ò为HTML版本:ò
我试过这样的:
# coding: utf-8
require 'rubygems'
require 'htmlentities'
require 'unicode'
coder = HTMLEntities.new
string = "Scròfina"
puts coder.encode(string, :named)
Run Code Online (Sandbox Code Playgroud)
但是我得到了这个(来自:http://htmlentities.rubyforge.org/):
/Library/Ruby/Gems/1.8/gems/htmlentities-4.2.0/lib/htmlentities/encoder.rb:85:in `unpack': malformed UTF-8 character (expected 2 bytes, given 1 bytes) (ArgumentError)
from /Library/Ruby/Gems/1.8/gems/htmlentities-4.2.0/lib/htmlentities/encoder.rb:85:in `encode_decimal'
from (eval):2:in `encode_extended'
from /Library/Ruby/Gems/1.8/gems/htmlentities-4.2.0/lib/htmlentities/encoder.rb:18:in `encode'
from /Library/Ruby/Gems/1.8/gems/htmlentities-4.2.0/lib/htmlentities/encoder.rb:18:in `gsub!'
from /Library/Ruby/Gems/1.8/gems/htmlentities-4.2.0/lib/htmlentities/encoder.rb:18:in `encode'
from /Library/Ruby/Gems/1.8/gems/htmlentities-4.2.0/lib/htmlentities.rb:74:in `encode'
from unicode_pleasure.rb:8
Run Code Online (Sandbox Code Playgroud)
感谢您的时间!
我正在捕获执行一些我们内部人员不再使用的旧16位应用程序.它们是1985年的DOS应用程序,因此捕获它们很容易...捕获在NTVDM.exe下启动的任何进程
现在,问题是找出NTVDM实际上在哪个程序下运行.显然,1985年的程序中有几个应该被允许运行,所以我需要看到隐藏在NTVDM下的实际EXE名称.
WqlEventQuery query =
new WqlEventQuery("__InstanceCreationEvent",
new TimeSpan(0, 0, 1),
"TargetInstance isa \"Win32_Process\"");
ManagementEventWatcher watcher = new ManagementEventWatcher(query);
watcher.EventArrived += new EventArrivedEventHandler(watcher_EventArrived);
watcher.Start();
...
static void watcher_EventArrived(object sender, EventArrivedEventArgs e)
{
ManagementBaseObject instance = (ManagementBaseObject)e.NewEvent["TargetInstance"];
ProcessInfo PI = new ProcessInfo();
PI.ProcessID = int.Parse(instance["ProcessID"].ToString());
PI.ProcessName = instance["Name"].ToString();
PI.ProcessPath = instance["ExecutablePath"].ToString();
// Here's the part I need...
PI.ActualEXE = ???;
// ... do the magic on the PI class ...
instance.Dispose();
}
Run Code Online (Sandbox Code Playgroud)
当我捕获实例信息时,我可以获取命令行,但参数是"-f -i10"...命令行上没有EXE名称.是否有任何其他方法/属性我应该查看以确定实际运行的16位应用程序的EXE名称?
更新:让我改进一下这个问题:如果我能找到NTVDM进程,我怎样才能 - 以编程方式 - 知道正在执行的EXE的实际路径?
谢谢.
我正在寻找一种干净的方式来启动一个具有动态值的动画.基本上我想做一个动画,其中一个元素根据另一个元素的数据改变宽度.假设我有一个文本属性为绑定的TextBlock.当这个属性改变时,我想要一个视觉元素说一个Rectangle,为了我们的目的,做一个DoubleAnimation,将宽度从前一个值改为新值.
如果可能的话,我试图远离将代码放在我的视图中.我已经研究过DataTriggers,但它们似乎要求你知道它的价值,例如Enum.在我的情况下,只是需要触发故事板的值更改,动画需要从当前(上一个)值开始,并很好地移动到新值.
有任何想法吗.也许我只是错过了一处房产.
如何在automake中设置库的顺序?
在我的文件中,我有类似的东西:
myprog_DEPENDENCIES = adhoc-target
myprog_SOURCES = myprog.c
myprog_LDADD = libmine.la
myprog_LDFLAGS = -static -L/home/user/lib -ladhoc
Run Code Online (Sandbox Code Playgroud)
现在,当我编译时,我也得到了类似的编译行:
gcc -static myprog-myprog.o -o myprog -L/home/user/lib -ladhoc ./.libs/libmine.a
Run Code Online (Sandbox Code Playgroud)
问题是libmine.a依赖于libadhoc.a,因此编译行应该是:
gcc -static myprog-myprog.o -o myprog ./.libs/libmine.a -L/home/user/lib -ladhoc
Run Code Online (Sandbox Code Playgroud)
如何在automake中设置库的顺序?(或者可能是一个解决方法;如何重复编译行中的所有库.这就是我在自定义Makefile中所做的.)
我使用的是.NET 3.5.此外,使用表单身份验证.
有没有办法获取所有登录用户的列表或ASP.NET中的计数?
注意:我没有使用会员资格和角色
试图在PostgreSQL上重新创建我的SQL Server数据库.一切都很好,除了我找不到如何重新创建这个索引:
USE [mytablename]
GO
CREATE NONCLUSTERED INDEX [myindex]
ON [dbo].[mytablename] ([col1],[col2])
INCLUDE ([col3],[col4])
GO
Run Code Online (Sandbox Code Playgroud)
将非常感谢您的帮助.
阿列克谢
更新:
http://img38.imageshack.us/img38/1071/89013974.png这里是db结构的明星+ eav
只有一个查询
SELECT this_.id as id0_0_,
this_.device_id as device2_0_0_,
this_.time_id as time3_0_0_,
this_.gps_detail_id as gps4_0_0_
FROM [scoutserver_data].[dbo].[DataMessage] this_
WHERE this_.time_id = 65536 and this_.device_id = 32768
Run Code Online (Sandbox Code Playgroud)
也许它不是最佳的atm.我正在研究它.也许这样的事情
SELECT * FROM [scoutserver_data].[dbo].[TimeDimension]
INNER JOIN ([scoutserver_data].[dbo].[DeviceDimension]
INNER JOIN [scoutserver_data].[dbo].[DataMessage]
ON [DeviceDimension].[device_id] =[DataMessage].[device_id])
ON [TimeDimension].[time_id] = [DataMessage].[time_id]
WHERE DeviceDimension.serial_id='2' AND TimeDimension.Day=15 AND TimeDimension.Year=2009
Run Code Online (Sandbox Code Playgroud)
任何提示欢迎=)
我正在尝试检测Type对象的特定实例是否是通用的"IEnumerable"...
我能想到的最好的是:
// theType might be typeof(IEnumerable<string>) for example... or it might not
bool isGenericEnumerable = theType.GetGenericTypeDefinition() == typeof(IEnumerable<object>).GetGenericTypeDefinition()
if(isGenericEnumerable)
{
Type enumType = theType.GetGenericArguments()[0];
etc. ...// enumType is now typeof(string)
Run Code Online (Sandbox Code Playgroud)
但这似乎有点间接 - 是否有更直接/更优雅的方式来做到这一点?
我将IIS7中的默认网站绑定到ASP.NET应用程序.此应用程序使用ASP.NET状态服务器来存储会话数据.我想在这个网站上添加一个额外的ASP.NET MVC应用程序.是否可以使用状态服务器在这两个应用程序之间共享会话?我已经读过有很多方法可以在SQL Server中存储会话数据,但我找不到任何关于使用状态服务器执行此操作的文档.
谢谢,内森
我有两个Map <Long,Integer>类型的映射,一个名为"oldValues"的表示对象的旧状态,另一个名为"newValues",表示同一对象的新状态.
是否有一种简单易读的方式来了解旧状态和新状态是否不同(即状态是否发生变化)?
理想情况下,我想要一些"java.utils"或"Apache Commons"库函数,如:
hasChanged = !MapUtils.diff(oldValues, newValues).isEmpty();
Run Code Online (Sandbox Code Playgroud)
注意:我找了,但没找到.
谢谢.
是否有可能改变Resharper格式化属性的方式?
我不喜欢:
public string Foo
{
get
{
return bar;
}
set
{
bar = value;
}
}
Run Code Online (Sandbox Code Playgroud)
我喜欢:
public string Foo
{
get { return bar; }
set { bar = value; }
}
Run Code Online (Sandbox Code Playgroud)