问题列表 - 第48969页

使用UTF-8或Latin1编码将QString转换为QByteArray

我想将QString转换为utf8或latin1 QByteArray,但今天我将所有内容都视为utf8.

而我正在使用高于0x7f的latin1的较高段中的一些字符来测试它,其中德语ü是一个很好的例子.

如果我喜欢这样:

QString name("\u00fc"); // U+00FC = ü
QByteArray utf8;
utf8.append(name);
qDebug() << "utf8" << name << utf8.toHex();

QByteArray latin1;
latin1.append(name.toLatin1());
qDebug() << "Latin1" << name << latin1.toHex();

QTextCodec *codec = QTextCodec::codecForName("ISO 8859-1");
QByteArray encodedString = codec->fromUnicode(name);
qDebug() << "ISO 8859-1" << name << encodedString.toHex();
Run Code Online (Sandbox Code Playgroud)

我得到以下输出.

utf8 "ü" "c3bc" 
Latin1 "ü" "c3bc" 
ISO 8859-1 "ü" "c3bc" 
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我到处都得到了unicode 0xc3bc,我希望在第2步和第3步得到Latin1 0xfc.

我的猜测是我应该得到这样的东西:

utf8 "ü" "c3bc" 
Latin1 "ü" "fc" 
ISO 8859-1 "ü" "fc" 
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?

/谢谢


链接到一些字符表:


此代码是在基于Ubuntu 10.04的系统上构建和执行的.

$> …
Run Code Online (Sandbox Code Playgroud)

c++ qt utf-8 latin1 qbytearray

6
推荐指数
1
解决办法
2万
查看次数

使表单重新检查ModelView

我有一个使用的WPF表单ModelView.这ModelView有一个List项目.问题是,当我将项目更改为列表时,表单继续具有旧项目.

有谁知道我怎么能注意到他必须ModelView更新它的数据的形式?

c# wpf

2
推荐指数
1
解决办法
50
查看次数

匿名IComparer实现

是否可以定义IComparer的匿名实现?

我相信Java允许内联定义匿名类 - C#?

看看这段代码我想定义一个自定义IComparer内联

public static IOrderedEnumerable<TSource> OrderBy<TSource, TKey>(
    this IEnumerable<TSource> source,
    Func<TSource, TKey> keySelector,
    IComparer<TKey> comparer
)
Run Code Online (Sandbox Code Playgroud)

c#

43
推荐指数
4
解决办法
2万
查看次数

在Java中更改标准输出

是否有任何方法可以更改标准输出流,以便将其写入某个文件而不是Java中的控制台?

java

3
推荐指数
1
解决办法
3415
查看次数

在Python中,要覆盖"if object:"的运算符是什么?

我发现使用以下构造检查对象是否为"空"非常方便:

l=[]
if l:
     do_stuff()
Run Code Online (Sandbox Code Playgroud)

对于标准python列表,if仅当列表不为空时才会执行.

我的问题是,我如何为自己的对象实现相同的想法?

python operator-overloading object

18
推荐指数
3
解决办法
3752
查看次数

正在使用的数据库错误与实体框架4代码优先

我有一个MVC3和EF 4 Code First应用程序,它被配置为在模型更改时通过将DB Initializer设置为a来更改数据库DropCreateDatabaseIfModelChanges<TocratesDb>,其中TocratesDb是我的派生DbContext.

我现在通过向类添加属性对模型进行了更改,但是当EF尝试删除并重新创建数据库时,我收到以下错误:

Cannot drop database "Tocrates" because it is currently in use.
Run Code Online (Sandbox Code Playgroud)

我绝对没有在这个数据库上打开任何其他连接.我假设我的cDbContext仍然与数据库有一个开放的连接,但我该怎么办呢?

新:现在我的问题是如何根据模型重新创建数据库.通过使用更通用的IDatabaseInitializer,我失去了它并且必须自己实现它.

sql entity-framework code-first ef-code-first

51
推荐指数
4
解决办法
2万
查看次数

从字符串中删除每个第n个元素

如何删除字符串的每个第n个元素?

我猜你会drop以某种方式使用这个功能.

像这样丢弃第一个n,你怎么能改变这个,所以只丢下第n个,然后是第n个,等等,而不是全部?

dropthem n xs = drop n xs
Run Code Online (Sandbox Code Playgroud)

haskell

7
推荐指数
3
解决办法
5435
查看次数

为自定义单词分隔Vim拼写文件

我刚开始在vim中使用拼写检查功能.根据文档,zg将当前单词添加到第一个拼写文件中.

是否建议创建一个自己的空拼写文件,这样英文拼写文件就不会乱七八糟?如果是这样:我如何创建一个空的拼写列表?一个空的适当命名的文件产生"E757:这看起来不像一个拼写文件".

vim spell-checking

11
推荐指数
1
解决办法
3626
查看次数

C中的悬空指针

我在C中编写了一个悬挂指针的程序.

#include<stdio.h>

int *func(void)
{
    int num;
    num = 100;
    return &num;
}

int func1(void)
{
    int x,y,z;
    scanf("%d %d",&y,&z);
    x=y+z;
    return x;
}

int main(void)
{
    int *a = func();
    int b;
    b = func1();
    printf("%d\n",*a);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

即使指针悬空,我输出为100.

我在上面的函数中做了一个改动func1().现在我在编译期间分配值,yz不是像上面的程序那样从标准输入中获取和从中获取值.

我重新定义func1()如下:

int func1(void)
{
    int x,y,z;
    y=100;
    z=100;
    x=y+z;
    return x;
}
Run Code Online (Sandbox Code Playgroud)

现在输出是200.

有人可以解释一下上述两项产出的原因吗?

c pointers dangling-pointer

1
推荐指数
1
解决办法
3536
查看次数

UITableview中的第一行,与其他行不同

我的UITableView需要在第一行中有一个图像.有什么问题?当用户向下滚动桌面视图时,他向上滚动,在图像上方有其他行的信息!你知道为什么吗?

这是我的代码(我使用的是UITableViewCell)

- (CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row != 0) {
    return 73.0;
}
else {
    return 109.0;
}   
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    if (indexPath.row == 0) {
        [[NSBundle mainBundle] loadNibNamed:@"customcell_3" owner:self options:NULL];
        cell = cellaNib_with_image;
    }
    else {
        [[NSBundle mainBundle] loadNibNamed:@"customcell_2" owner:self options:NULL];
        cell = cellaNib;
    }


}

if (indexPath.row == 0) {
    UIImage *rowBackground;
    UIImage *selectionBackground;
    rowBackground …
Run Code Online (Sandbox Code Playgroud)

iphone uitableview

3
推荐指数
1
解决办法
8693
查看次数