问题列表 - 第2328页

在C中对字符串进行标记

我一直试图使用SPACE作为分隔符来标记字符串,但它不起作用.有没有人建议为什么它不起作用?

编辑:使用以下方式标记:

strtok(string, " ");
Run Code Online (Sandbox Code Playgroud)

代码如下

pch = strtok (str," ");
while (pch != NULL)
{
  printf ("%s\n",pch);
  pch = strtok (NULL, " ");
}
Run Code Online (Sandbox Code Playgroud)

c string tokenize

24
推荐指数
4
解决办法
12万
查看次数

如何在java中对jdbc代码进行单元测试?

我想为一些连接到数据库的代码编写一些单元测试,运行一个或多个查询,然后处理结果.(没有实际使用数据库)

这里的另一个开发人员编写了我们自己的DataSource,Connection,Statement,PreparedStatement和ResultSet实现,它们将根据xml配置文件返回相应的对象.(我们可以使用伪数据源,只针对它返回的结果集运行测试).

我们在这里重新发明轮子吗?这样的单元测试是否已经存在?是否有其他/更好的方法来测试jdbc代码?

java database junit unit-testing jdbc

44
推荐指数
4
解决办法
5万
查看次数

在VIM命令行模式下,当前行的特殊字符/符号是什么?

在命令行模式的VIM中,"%"表示当前文件,"cword"表示光标下的当前字.我想创建一个快捷方式,我需要当前的行号.表示这个的符号是什么?

vim

13
推荐指数
2
解决办法
3070
查看次数

人们可以使用分析器,但为什么不停止程序呢?

如果某个东西正在使单线程程序占用,比如10倍,那么就可以在其上运行一个分析器.您也可以通过"暂停"按钮暂停它,您将看到它正在做什么.

即使它比它应该慢了10%,如果你停止它多次,不久你会看到它反复做不必要的事情.通常问题是在堆栈中间某处不是真正需要的函数调用.这不能衡量问题,但确实找到了.

编辑:反对意见主要假设您只采取1个样本.如果你是认真的,请采取10.任何一行代码,导致一定比例的浪费,如40%,将平均出现在该部分样本的堆栈上.瓶颈(单线程代码)无法隐藏它.

编辑:为了表明我的意思,许多反对意见的形式是"没有足够的样本,所以你看到的可能完全是虚假的" - 关于机会的模糊观点.但是,如果任何可识别的描述,不仅仅是在常规或常规活动中,在30%的时间内有效,那么在任何给定样本上看到它的概率是30%.

然后假设只采集了10个样本.在10个样本中看到问题的次数遵循二项分布,并且看到它0次的概率是.028.看到它1次的概率是.121.2次,概率为.233,而3次则为.267,之后下降.由于看到它少于两次的概率是.028 + .121 = .139,这意味着看到它两次或更多次的概率是1 - .139 = .861.一般规则是,如果您看到可以修复两个或更多样本的内容,则值得修复.

在这种情况下,在10个样本中看到它的机会是86%.如果你是14%没有看到它的人,那就去做更多的样品.(如果样本数量增加到20,那么两次或多次观察的几率会增加到99%以上.)所以它没有经过精确测量,但已经准确找到了,重要的是要了解它它可能很容易成为分析器无法实际找到的东西,例如涉及数据状态的东西,而不是程序计数器.

optimization performance profiling

45
推荐指数
12
解决办法
3万
查看次数

在远程计算机上重新启动服务的最简单方法

在远程Windows系统上重新启动服务的最简单的编程方法是什么?语言或方法无关紧要,只要它不需要人为干预即可.

windows windows-services

56
推荐指数
3
解决办法
22万
查看次数

git-svn:如何通过git创建一个新的svn分支?

我有一个跟踪svn存储库的git存储库.我用它克隆了它--stdlayout.

我通过创建了一个新的本地分支 git checkout -b foobar

现在我希望这个分支最终…/branches/foobar进入svn存储库.

我该怎么做?

(剪了很多调查文本.如果你关心,请查看问题历史)

git version-control git-svn

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

WPF找到一个控件

我在WPF页面上的过程代码中创建了一个网格.现在我想引用那个网格.

Grid grid = (Grid)This.FindName("myGridName")
Run Code Online (Sandbox Code Playgroud)

不起作用.想法?

wpf

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

如何更新预先存在的Jar文件

我有一个WAR文件,我需要添加两个文件.目前,我这样做:

File war = new File(DIRECTORY, "server.war");
JarOutputStream zos = new JarOutputStream(new BufferedOutputStream(new FileOutputStream(war)));

//Add file 1
File file = new File(DIRECTORY, "file1.jar");
InputStream is = new BufferedInputStream(new FileInputStream(file));
ZipEntry e = new ZipEntry("file1.jar");
zos.putNextEntry(e);
byte[] buf = new byte[1024];
int len;
while ((len = is.read(buf, 0, buf.length)) != -1) {
    zos.write(buf, 0, len);
}
is.close();
zos.closeEntry();

//repeat for file 2

zos.close();
Run Code Online (Sandbox Code Playgroud)

结果是前面的内容被破坏了:WAR只有我刚刚添加的2个文件.是否有某种追加模式,我没有使用或什么?

java jar

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

MySQL中的非空列中的空字符串?

我曾经使用标准的mysql_connect(),mysql_query()等语句来从PHP做MySQL的东西.最近我一直在转向使用精彩的MDB2课程.除此之外,我正在使用预处理语句,所以我不必担心逃避输入和SQL注入攻击.

但是,我遇到了一个问题.我有一个包含几个VARCHAR列的表,指定为非null(即,不允许NULL值).使用旧的MySQL PHP命令,我可以做这样的事情没有任何问题:

INSERT INTO mytable SET somevarchar = '';
Run Code Online (Sandbox Code Playgroud)

但是,现在,如果我有一个类似的查询:

INSERT INTO mytable SET somevarchar = ?;
Run Code Online (Sandbox Code Playgroud)

然后在PHP中我有:

$value = "";
$prepared = $db->prepare($query, array('text'));
$result = $prepared->execute($value);
Run Code Online (Sandbox Code Playgroud)

这会抛出错误" null value violates not-null constraint"

作为一个临时的解决方法,我检查是否$value为空,并将其更改为" "(单个空格),但这是一个可怕的黑客,可能会导致其他问题.

我怎么应该用准备好的语句插入空字符串,而不试图插入NULL?

编辑:通过我的整个代码库是一个太大的项目,找到使用空字符串""的所有地方,并改为使用NULL代替.我需要知道的是,为什么标准MySQL查询将""和NULL视为两个独立的东西(我认为是正确的),但是预处理语句将""转换为NULL.

请注意,""和NULL 不是一回事.例如,SELECT NULL = "";返回NULL而不是1您期望的.

php mysql mysqli nullable prepared-statement

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

默认/相对路径解析如何在.NET中工作?

所以...我曾经认为,当你访问一个文件但指定了一个没有路径的名称(在我的情况下是CAISLog.csv)时,.NET会希望文件驻留在与运行的.exe相同的路径上.

当我逐步完成解决方案(C#.NET2.*VS2K5)但我在正常模式下运行应用程序(由Websphere MQ触发器监视器启动并在后台作为网络服务运行)而不是访问文件时在.exe是在C:\ WINDOWS\system32中查找的路径.如果它重要父任务的.exe与我的应用程序几乎在同一文件夹结构/路径中

我收到一个匹配的错误:" System.UnauthorizedAccessException:拒绝访问路径'C:\ WINDOWS\system32\CAISLog.csv'. "

我的解决方法是完全限定我的文件的位置.但是,我想要理解的是"在IO期间仅指定文件名时,管理路径解析方式的.NET规则什么?" 我觉得我错过了一些基本的概念,这让我很烦.

编辑 - 我不确定它本身是一个.NET规则,但Schmuli似乎更清楚地解释了这个概念.我一定会在未来尝试Rob Prouse的建议,所以+1也是如此.

如果有人有一些重写措辞建议强调我并不真正关心找到我的.exe的路径 - 而只是不明白相关路径解决方案发生了什么(我可能仍然把我的终端文件搞砸了) ...

c# file-io visual-studio .net-2.0

7
推荐指数
2
解决办法
9554
查看次数