我想传递一个类属性(或getter/setter,如果需要)引用一个函数.
例如,我有一个包含许多布尔标志的类数组.
class Flags
{
public bool a;
public bool b;
public bool c;
public string name;
public Flags(bool a, bool b, bool c, string name)
{
this.a = a;
this.b = b;
this.c = c;
this.name = name;
}
}
Run Code Online (Sandbox Code Playgroud)
我可以编写一个方法来返回所选标志为true的所有Flags实例
public Flags[] getAllWhereAisTrue(Flags[] array)
{
List<Flags> resultList = new List<Flags>();
for (int i = 0; i < array.Length; i++)
{
if (array[i].a == true) // for each Flags for which a is true
{ // add it to …Run Code Online (Sandbox Code Playgroud) 我可以通过pypyodbc在python中发送查询来从MSSQL数据库中读取.
大多数unicode字符处理正确,但我遇到了一个导致错误的特定字符.
有问题的字段是类型,nvarchar(50)并以这个字符""开头,这对我来说有点像这样......
-----
|100|
|111|
-----
Run Code Online (Sandbox Code Playgroud)
如果该数字是十六进制,0x100111那么它就是角色supplementary private use area-b u+100111.虽然有趣的是,如果它是二进制的,0b100111那么它是一个撇号,可能是在上传数据时使用了错误的编码吗?该字段存储中文邮政地址的一部分.
错误消息包括
UnicodeDecodeError:'utf16'编解码器无法解码位置0-1中的字节:意外的数据结束
在这里它是完整的......
Traceback (most recent call last): File "question.py", line 19, in <module>
results.fetchone() File "/VIRTUAL_ENVIRONMENT_DIR/local/lib/python2.7/site-packages/pypyodbc.py", line 1869, in fetchone
value_list.append(buf_cvt_func(from_buffer_u(alloc_buffer))) File "/VIRTUAL_ENVIRONMENT_DIR/local/lib/python2.7/site-packages/pypyodbc.py", line 482, in UCS_dec
uchar = buffer.raw[i:i + ucs_length].decode(odbc_decoding) File "/VIRTUAL_ENVIRONMENT_DIR/lib/python2.7/encodings/utf_16.py", line 16, in decode
return codecs.utf_16_decode(input, errors, True) UnicodeDecodeError: 'utf16' codec can't decode bytes in position 0-1: unexpected end of data
Run Code Online (Sandbox Code Playgroud)
这是一些最小的再现代码......
import pypyodbc
connection_string …Run Code Online (Sandbox Code Playgroud) c# ×1
generics ×1
parameters ×1
properties ×1
pyodbc ×1
pypyodbc ×1
python ×1
sql-server ×1
unicode ×1