完全被现在混淆了......我正在开发python/django并使用python日志记录.我的所有应用程序都需要unicode,我的所有模型都只有一个unicode()`,返回你'''方法.现在,在登录时,我遇到了一个非常奇怪的问题,它花了很长时间才发现我可以重现它.我已经尝试过Py 2.5.5和Py 2.6.4以及同样的事情.所以
每当我做一些直接记录时,如:
logging.debug(u'new value %s' % group)
Run Code Online (Sandbox Code Playgroud)
这称为模型组.unicode():返回unicode(group.name)
我的unicode方法看起来像这样:
def __unicode__(self):
return u'%s - %s (%s)' % (self.group, self.user.get_full_name(), self.role)
Run Code Online (Sandbox Code Playgroud)
即使group.name为XXX或ÄÄ(需要unicode),这也适用.但是当我出于某种原因想要记录一个集合,列表,字典,django-query集合以及例如列表中的各个实例可能是unicode或者我没有遇到麻烦...
每当group.name需要像Luleå(我的家乡)这样的unicode时,这会给我一个UnicodeDecodingError
logging.debug(u'new groups %s' % list_of_groups)
Run Code Online (Sandbox Code Playgroud)
通常我得到这样的错误:
Exception Type: UnicodeDecodeError
Exception Value: ('ascii', '<RBACInstanceRoleSet: s2 | \xc3\x84\xc3\x96\xc3\x96\xc3\x85\xc3\x85\xc3\x85 Gruppen>]', 106, 107, 'ordinal not in range(128)')
Run Code Online (Sandbox Code Playgroud)
但是,如果我做的print list_of_groups
一切在终端上变得很好
所以,我的理解是列表开始生成自己并对其所有元素执行repr()并返回它们的值 - 在这种情况下它应该是's2 | ÅÄÖÖ',然后列表呈现为(ascii,列表中的东西),然后当尝试将ascii解码为unicode时,这当然不起作用 - 因为列表中的一个元素已经回归当repr完成时,你自己就是一个'...'.
但是为什么这个????'
为什么每当我记录group.name之类的简单事物以及调用unicode方法时,事情都能正常处理并且unicode/ascii被正确处理.每当我变得懒惰并且想要记录列表时,无论何时遇到unicode字符,设置或其他事情都会变坏...
一些工作和失败的例子.如果group.name
我去模型字段并group
调用__unicode__()
logging.debug("1. group: %s " % group.name) …
Run Code Online (Sandbox Code Playgroud) 在PHP中,我可以调用base64_encode("\x00". $username. "\x00". $password)
,并且"\x00"
表示NULL字符。
现在,在Objective-C中,我有一个将NSData转换为DaveDribin创建的base64编码的NSString的函数。
如何从具有NULL字符的字符串中创建数据?
这似乎不起作用...
NSData * authCode = [[NSString stringWithFormat:@"%c%@%c%@", '\0', self.username, '\0', self.password] dataUsingEncoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud) 我正在思考编写单例类的其他方法.那么这个类被认为是一个单例类吗?
public class MyClass{
static Myclass myclass;
static { myclass = new MyClass();}
private MyClass(){}
public static MyClass getInstance()
{
return myclass;
}
}
Run Code Online (Sandbox Code Playgroud)
因为静态块只运行一次.
我知道有一种方法可以显示visual studio中解决方案中包含的每个项目的构建时间.但我正在寻找的是构建整个解决方案所花费的总时间,从我点击构建的那一刻起到完成的那一刻.
反正有没有这样做?运行Visual Studio 2008.
我有一堆数字表示为日志文件中的十六进制字符串,由Perl脚本解析,而且我对Perl相对缺乏经验.
这些数字中的一些实际上是带符号的负数,即0xFFFE == -2
表示为16位有符号整数时.
有人可以告诉我从FFFE
Perl中的字符串中获取此数字的签名表示的规范方法,或以其他方式指向我的教程或其他资源吗?
我编写了一个WCF服务,它应该使用Streamed TransferMode NetTcpBinding
和System.IO.Stream
object 来转换任意大小的文件.
在运行性能测试时,我发现了显着的性能问题.然后我决定使用Buffered TransferMode进行测试,看到性能提高了两倍!
因为我的服务应该传输大文件,所以我不能留在Buffered TransferMode,因为服务器和客户端的大文件的内存管理开销在一起.
为什么Streamed TransferMode比Buffered TransferMode慢?我该怎么做才能让Stremed表现更好?
虽然在Java中使用'final'关键字的原因有很多,但我一遍又一遍地听到的一个原因是它使您的代码更安全.虽然这在这个微不足道的案例中似乎有意义:
public class Password
{
public final String passwordHash;
...
}
Run Code Online (Sandbox Code Playgroud)
使用final关键字,您可以预期没有恶意代码可以更改变量passwordHash.但是,使用反射可以更改passwordHash字段的最终修饰符.
"最终"提供任何真正的安全性,还是只是安慰剂?
编辑: 有一些非常有趣的讨论,我希望我能接受不止一个答案.谢谢各位的意见.
以下HTTP 1.1标头是什么意思?
如果 - 无匹配:*
我在使用强弱或弱ETag甚至是ETag列表时理解它,但我不明白它在使用星号(*)时的用途.
编辑:很高兴有一些伪代码(PHP代码也很好)将显示如何/如何回答"If-None-Match:*".
为什么我们需要在C#中装箱和拆箱?
我知道拳击和拆箱是什么,但我无法理解它的实际用途.我应该在哪里以及在哪里使用它?
short s = 25;
object objshort = s; //Boxing
short anothershort = (short)objshort; //Unboxing
Run Code Online (Sandbox Code Playgroud) 我正在使用 jQuery 并让服务器代码返回以下值
0:SELECT ONE;1:VALUE1;2:VALUE2 etc
Run Code Online (Sandbox Code Playgroud)
如何将其填充到选择框中?
var="0:SELECT ONE;1:VALUE1;2:VALUE2";
$("#targetSelectBox"). ???????
Run Code Online (Sandbox Code Playgroud) .net ×2
c# ×2
java ×2
boxing ×1
build-time ×1
decoding ×1
django ×1
final ×1
http ×1
http-1.1 ×1
http-headers ×1
javascript ×1
jquery ×1
logging ×1
nsstring ×1
numbers ×1
objective-c ×1
parsing ×1
performance ×1
perl ×1
python ×1
security ×1
signed ×1
singleton ×1
streaming ×1
unicode ×1
wcf ×1