我是一名研究软件水印技术的博士生,我总是被问到"谁使用它?" 答案我不知道.关于这个问题有大量的学术研究工作(最着名的是来自Collberg等人),但很少有迹象表明它在工业中的流行.软件水印涉及将独特的标识符嵌入到软件中以便以与多媒体水印相似的方式证明所有权.所以,也许这里的程序员可以回答这个问题:'谁使用软件水印?'
是否有任何PHP函数将字符串编码为int值,稍后我可以将其解码回没有任何键的字符串?
我的目标是转换表单输入,如"100兆字节"或"1千兆字节",并将其转换为我可以存储在数据库中的千字节文件大小.目前,我有这个:
def quota_convert
@regex = /([0-9]+) (.*)s/
@sizes = %w{kilobyte megabyte gigabyte}
m = self.quota.match(@regex)
if @sizes.include? m[2]
eval("self.quota = #{m[1]}.#{m[2]}")
end
end
Run Code Online (Sandbox Code Playgroud)
这是有效的,但只有当输入是一个倍数("千兆字节",但不是"千兆字节")并且由于使用而显得非常不安全eval.所以,功能,但我今晚睡不好觉.
任何指导?
编辑:------
行.出于某种原因,带有(.*?)的正则表达式在我的设置上无法正常工作,但我已经使用Rails的东西解决了这个问题.此外,我已经意识到字节对我来说会更好.
def quota_convert
@regex = /^([0-9]+\.?[0-9]*?) (.*)/
@sizes = { 'kilobyte' => 1024, 'megabyte' => 1048576, 'gigabyte' => 1073741824}
m = self.quota.match(@regex)
if @sizes.include? m[2].singularize
self.quota = m[1].to_f*@sizes[m[2].singularize]
end
end
Run Code Online (Sandbox Code Playgroud)
这捕获"1兆字节","1.5兆字节",以及大多数其他东西(我希望).然后它无论如何都使它成为单数版本.然后它进行乘法并吐出魔法答案.
这是合法的吗?
再次编辑:请参阅下面的答案.比我的废话更清洁.
我正在创建一个菜单,我希望按钮在屏幕上"弹出".基本上我想从0px尺寸开始,然后达到按钮的全尺寸.如果我愿意,我可以设置alpha和位置的动画,但不能做尺寸,我认为它是因为按钮上的图像.
如果我执行UIButtonTypeRoundRect,您可以看到按钮在图像后面进行动画处理,但图像是静态的.
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setBackgroundImage:[UIImage imageNamed:@"settings.png"] forState:UIControlStateNormal];
button.frame = CGRectMake(20, 20, 0, 0);
button.alpha = 0;
[self.view addSubview:button];
CGRect frame = button.frame;
[UIView beginAnimations:@"button" context:nil];
[UIView setAnimationDuration:1];
button.alpha = 1;
frame.size.width += 53;
frame.size.height += 53;
button.frame = frame;
[UIView setAnimationDelegate:self];
[UIView commitAnimations];
Run Code Online (Sandbox Code Playgroud)
所以Alpha工作但调整大小没有.我也玩过stretchchableImageWithLeftCapWidth尝试给它上下文或其他东西,但无济于事.
干杯,为您提供帮助.
我想使用一行代码将参数传递给某些javascript,如下所示:
<script language="JavaScript" src="courselist.js?subj=MATH" type="text/javascript" />
Run Code Online (Sandbox Code Playgroud)
在javascript文件中,如何获取参数"subj"的值?
谢谢
class Parent():
def __init__(self):
self.child = Child()
class Child():
def __init__(self):
# get Parent instance
self.parent = self.Instantiator()
Run Code Online (Sandbox Code Playgroud)
我知道这不是适当的封装,但出于利益的考虑......
给定一个实例化"Child"对象的"Parent"类,是否可以从Child内部返回实例化它的Parent对象?如果不是,我很好奇,有没有语言支持这个?
看来,ConfigurationElement中TimeSpan无法处理超过23:59:59较大的值.有没有解决方法?是继承TimeSpan,并使一个新的TimeSpanValidatorAttribute甚至上班?我需要处理从几分钟到几天的时间跨度.
我正在使用以下配置部分
[ConfigurationProperty("SequenceRolloverDOSCompare", IsRequired = true)]
[TimeSpanValidator(MinValueString = "0:0:00", MaxValueString = 10675199.02:48:05.4775807", ExcludeRange = false)]
public TimeSpan SequenceRolloverDOSCompare
{
get
{
return (TimeSpan)base["SequenceRolloverDOSCompare"];
}
}
Run Code Online (Sandbox Code Playgroud)
配置看起来像这样:
<SequenceRolloverPolling SequenceRolloverDOSCompare="2:00:00:00" />
Run Code Online (Sandbox Code Playgroud)
给 ConfigurationErrorsException : The value of the property 'SequenceRolloverDOSCompare' cannot be parsed. The error is: 2:00:00:00 is not a valid value for TimeSpan.
或这个:
<SequenceRolloverPolling SequenceRolloverDOSCompare="48:00:00" />
Run Code Online (Sandbox Code Playgroud)
给 OverflowException : The TimeSpan could not be parsed because at least one of the hours, …
我正在使用javascript和html5编写一个简单的平台游戏.我正在以OO方式使用javascript.为了继承工作,我正在使用以下内容;
// http://www.sitepoint.com/blogs/2006/01/17/javascript-inheritance/
function copyPrototype(descendant, parent) {
var sConstructor = parent.toString();
var aMatch = sConstructor.match(/\s*function (.*)\(/);
if (aMatch != null) { descendant.prototype[aMatch[1]] = parent; }
for (var m in parent.prototype) {
descendant.prototype[m] = parent.prototype[m];
}
};
Run Code Online (Sandbox Code Playgroud)
为了这篇文章,请考虑以下示例;
function A() {
this.Name = 'Class A'
}
A.prototype.PrintName = function () {
alert(this.Name);
}
function B() {
this.A();
}
copyPrototype(B, A);
function C() {
this.B();
}
copyPrototype(C, B);
var instC = new C();
if (instC instanceof A)
alert ('horray!');
Run Code Online (Sandbox Code Playgroud)
据我了解,我希望看到一个恐怖警报框,因为C是C&B&A的一个例子.我错了吗?或者我只是用错误的方法来检查?或者copyPrototype是否使用了instanceof运算符?
一如既往地感谢您花时间阅读本文!
肖.
我有一个应用程序,它检查其命令行参数并将值存储在持久存储中.其中一个是密码,我不想让人们看到'ps'和朋友.我目前正在研究的方法是,在我存储了我需要的值之后,在没有命令行参数的情况下重新启动进程.我天真的方法就是这样,其中args [0]是应用程序的路径:
NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:[args objectAtIndex:0]];
[task launch];
[task release];
[NSApp terminate:nil];
Run Code Online (Sandbox Code Playgroud)
孩子跑了.然而,当我的应用程序被终止时,孩子似乎不是孤儿,而是被卡住了.我离开这个吗?
更多信息:所以看来,当我调用[NSApp terminate:nil]时,启动的NSTask卡住了,但是如果我只是退出()那么它工作正常.但是,如果我这样做,我担心开放的东西(钥匙串,plist等)会处于不良状态.
请注意,许多示例代码都是关于某些类似监视程序的进程,它会在需要时重新启动单独的进程.我正在尝试重新启动已在同一进程内运行的当前进程.
我目前有一个类似于这些的项目和测试.
class mylib:
@classmethod
def get_a(cls):
return 'a'
@classmethod
def convert_a_to_b(cls, a):
return 'b'
@classmethod
def works_with(cls, a, b):
return True
class TestMyStuff(object):
def test_first(self):
self.a = mylib.get_a()
def test_conversion(self):
self.b = mylib.convert_a_to_b(self.a)
def test_a_works_with_b(self):
assert mylib.works_with(self.a, self.b)
Run Code Online (Sandbox Code Playgroud)
使用py.test 0.9.2,这些测试(或类似测试)通过.对于更高版本的py.test,test_conversion和test_a_works_with_b失败并且'TestMyStuff没有属性a'.
我猜这是因为在py.test的后续版本中,为每个被测试的方法创建了一个单独的TestMyStuff实例.
编写这些测试的正确方法是什么,以便可以为序列中的每个步骤提供结果,但是可以(必须)使用先前(成功)测试的状态来执行后续测试?
javascript ×2
oop ×2
python ×2
animation ×1
c# ×1
cocoa ×1
decode ×1
dom ×1
encode ×1
filesize ×1
inheritance ×1
instanceof ×1
int ×1
iphone ×1
java ×1
objective-c ×1
parameters ×1
php ×1
process ×1
protection ×1
pytest ×1
ruby ×1
security ×1
string ×1
testing ×1
timespan ×1
uibutton ×1
uiimage ×1
uiview ×1
watermark ×1