小编Dan*_*ode的帖子

如何从文件中读取字节,而结果byte []完全一样长

我希望结果byte[]与文件内容完全一样长.如何实现这一目标.

我在考虑ArrayList<Byte>,但它似乎没有效率.

java file-io

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

有没有什么替代"截断"听起来更安全?

我有一个应用程序在文件启动时从文件中读取链接列表1,并在文件结束时将其写回文件.我truncate在回写时选择文件模式.然而,truncate对我来说听起来有点危险,因为它首先清除了整个内容.因此,如果出现问题,我就无法取回原来的东西了.还有更好的选择吗?

1:我使用链表,因为商品的顺序可能会改变.因此我后来truncate用来更新整个文件.


正如他第一次指出的那样File.Replace(),汉斯的正确答案声誉正确,尽管目前还没有适用于Silverlight.

c# file-io

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

构造函数与onNavigatedTo

我很困惑我应该在构造函数中做什么,以及我应该onNavigatedTo在Windows Phone页面的方法中做什么.

特别是,我应该在哪里阅读存储和设置?

navigation windows-phone-7

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

在C/C++中最有效的方法是修剪额外的空白,除了1个空白用于非常大的数据集

我正在开发一个C/C++函数来修剪额外的空白,除了1个空白用于非常大的数据集.这是我的功能:

       void  iterative_trim_whitespace(const char* src, char* target){


             bool hitspace(*src = ' ');
             while (*src != '\x0'){
                if (!hitspace){
                    *target++ = *src++;
                } 
                else{
                    src++;
                }
                if (isspace(*src)){
                    hitspace = true;
                }  
                else{

                    hitspace = false;
                }
             }

         }
Run Code Online (Sandbox Code Playgroud)

我写了一个递归函数来做同样的事情.如果你愿意,我可以提供.但是,对于具有大字符串的非常大的数据,递归函数calll堆栈开销可能是令人望而却步的.有谁知道用C/C++做这个的最快方法?我熟悉标准模板库和Boost模板库.但是我认为原生C/C++会比C++模板更快.

c c++ algorithm

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

简单的正则表达式不适用于c#

/news/article-title.html

没有被正则表达式抓住:

^ /消息/ [^(档案).+.HTML

我正在尝试在文件名中没有"档案"的文章,但以"/ news /"开头

谢谢!

c# regex

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

默认构造函数未被调用

为什么默认构造函数(同一个类)在调用默认构造函数时没有调用,但父类的默认构造函数被调用 - 为什么?

class A{
    A(){
        System.out.println("A()");
    }
}

class B extends A{
    B(){
        System.out.println("B()");
    }
}

class C extends B{
    C(){
        System.out.println("C()");
    }
    C(int i){
        System.out.println("<------>"+i);
    }
}
public class sample {
    public static void main(String[] args) {
        C c = new C(8);

    }
}
Run Code Online (Sandbox Code Playgroud)

输出:

A()
B()
<------>8
Run Code Online (Sandbox Code Playgroud)

java

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

如何让char []与std :: map一起使用

编辑后回答:

<应该提供std::map.有关最佳实践的更多信息,请访问James McNellis的答案.

这个问题中包含的代码编写得很糟糕.这只是因为我正在玩SPOJ并且输入数据严格有效.这种std::string方法是我最初选择的方法,但事实证明还不够快.

谢谢.


我知道我不能char[]直接用地图,比如map<char[], int>.因此我把它放在课堂上.但它仍然可以通过编译.怎么处理?


#include <stdio.h>
#include <map>

using namespace std;

class id {
public:
    char v [30];
};

int main () {
    map<id, int> m;
    id a;
    while (gets(a.v)) {
        m[a]++;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)
/usr/lib/gcc/i686-pc-linux-gnu/4.3.4/include/g++-v4/bits/stl_function.h: In member function ‘bool std::less<_Tp>::operator()(const _Tp&, const _Tp&) const [with _Tp = id]’:
/usr/lib/gcc/i686-pc-linux-gnu/4.3.4/include/g++-v4/bits/stl_map.h:418:   instantiated from ‘_Tp& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const _Key&) [with _Key = id, _Tp …
Run Code Online (Sandbox Code Playgroud)

c++ arrays stl map

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

继续收到错误LNK2019:未解析的外部符号

我使用的IDE是Visual Studio 2010 Professional,我使用的库是用于MSVC10的Win32的ICU 4C 4.8.1.

我根据Debug和Release的手册重建了所有源代码,并且所有测试都成功通过.

然后我按照Boost的方式做.

我包含了包含C/C++中>附加包含Proprieties中的目录,这似乎很好.

我还包括\ lib中链接>附加库目录.

但是,我一直在努力error LNK2019: unresolved external symbol.

源代码:

#include <unicode/uchar.h>

int main () {
    UBool b = u_isprint('c');
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

错误

1>ClCompile:
1>  Main.cpp
1>Main.obj : error LNK2019: unresolved external symbol _u_isprint_48 referenced in function _main
1>C:\Users\ ... \Documents\Visual Studio\Finger-Printing-Non-ASCII\Debug\Finger-Printing-Non-ASCII.exe : fatal error LNK1120: 1 unresolved externals
1>
1>Build FAILED.
Run Code Online (Sandbox Code Playgroud)

c++ linker unresolved-external icu

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

两个分隔符之间的子串

我有一个字符串:"这是一个应该使用的URL http://www.google.com/MyDoc.pdf "

我只需要提取从http开始并以pdf结尾的URL:http: //www.google.com/MyDoc.pdf

String sLeftDelimiter = "http://";
String[] tempURL = sValueFromAddAtt.split(sLeftDelimiter );
String sRequiredURL = sLeftDelimiter + tempURL[1];
Run Code Online (Sandbox Code Playgroud)

这会将输出显示为"应该使用的http://www.google.com/MyDoc.pdf"

需要帮助.

java split substring

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

如何正确使用Java泛型?扩展Set <Integer>

首先,我试着用

Map<Integer, Set<Integer>> map = new HashMap<Integer, HashSet<Integer>>();
Run Code Online (Sandbox Code Playgroud)

,但它没有编译,因为没有可用的转换.

然后我试了一下

Map<Integer, ? extends Set<Integer>> map = new HashMap<Integer, HashSet<Integer>>();
Run Code Online (Sandbox Code Playgroud)

.它似乎工作,但当我试图打电话

map.put(i, new HashSet<Integer>());
Run Code Online (Sandbox Code Playgroud)

,由于不兼容,结果证明是失败的.

我该如何解决这个问题?

java generics

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