小编0xb*_*7ed的帖子

有效地将Java字符串转换为表示C字符串的以空字符结尾的byte []?(ASCII)

我想将Java String str转换为byte[] b具有以下特征:

  • b是一个有效的C字符串(它有b.length = str.length() + 1b[str.length()] == 0.
  • 中的字符b通过在转换字符获得的str8位ASCII字符.

最有效的方法是什么 - 最好是现有的库函数?可悲的是,str.getBytes("ISO-8859-1")不符合我的第一个要求......

java string

3
推荐指数
2
解决办法
8451
查看次数

更改VS Express 2013"StartPages"文件夹的位置

Visual Studio Express 2013 for Windows桌面中包含一系列特定于用户的设置C:\Users\MYUSER\Documents\Visual Studio 2013.我不喜欢这个,因为它与我的主目录结构混淆,所以我使用Tools > Options对话框将大多数这些选项移到我的Documents文件夹之外.

但是,我找不到移动StartPages子目录的方法,因此C:\Users\MYUSER\Documents\Visual Studio 2013\StartPages每次启动Visual Studio时都会重新创建.烦!

有人可以帮我弄清楚如何告诉Visual Studio使用不同的文件夹吗?

这是我到目前为止所尝试的:

  • 仔细查看Tools > Options,包括唯一无用的Environment > Startup选项页面.
  • 这篇文章,与VS 2010有关.
  • 使用regedit搜索以下内容(在键/值/数据中):
    • "My Documents\visual studio 2013\StartPages"
    • "Documents\visual studio 2013\StartPages"
    • "StartPages"
  • 使用Notepad ++查找"StartPages"in %APPDATA%\Microsoft\WDExpress\12.0(没有结果)的文件.

visual-studio visual-studio-2013

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

One-liner,用于在Java中创建N个引用副本的只读列表

我有一个参考a Callable<V>,我想把它放入一个列表N次传入ExecutorService.invokeAll(...).是否有一个单行来完成这个:

ArrayList<Callable<V>> list = new ArrayList<>(N);
for (int k = 0; k < N; ++k) {
    list.add(x); // x is a reference to Callable<V>
}
Run Code Online (Sandbox Code Playgroud)

类似于C++中的以下行:

const std::vector<T> list(N, x); // x is an instance of T
Run Code Online (Sandbox Code Playgroud)

java list

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

签出完整的Subversion树,不包括标签/和分支/

我正在开发一个包含100个Maven子项目的企业源代码树.由于每个子项目都有自己的布局branches/tags/子文件夹,整个树的布局是这样的:

root/
    some/intermediate/dirs/
        project1/
            branches/
                ...
            tags/
                ...
            trunk/
                ...
        project2/
            branches/
                ...
            tags/
                ...
            trunk/
                ...
        ...
        projectN/
            branches/
                ...
            tags/
                ...
            trunk/
                ...
    other/intermediate/dirs/
        projectN+1/
            ...
Run Code Online (Sandbox Code Playgroud)

我需要检查trunk/所有项目的版本,但不幸的是,该命令$ svn co protocol://path/to/repo/root/检查完整版本的标签和分支,留下了数以千计的冗余源树,并永远.

此外,这N是一个非常大的数字,我不可能单独进入并检查每个项目的行李箱.

是否有一个svn命令,使我跳过tags/branches/树木?

我找到了一个博客,解释了如何使用SVNKit编写Java程序来完成此任务,但我希望我可以使用命令行中的单行程来完成它.

更新:svn首选只使用可执行文件的解决方案,但是如果需要一些shell脚本,我更喜欢Windows批处理脚本,否则,任何bashzsh脚本都会...

svn bash version-control branch cmd

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

使用Java 9使"gradle javadoc"任务正常工作

我有一个使用source/target = 1.9/1.9的多模块Gradle Java项目.有两个模块,my.basemy.dependsOnBase.该my.base模块没有其它的依赖:

module my.base {
    exports my.base.foo;
    exports my.base.bar;
}
Run Code Online (Sandbox Code Playgroud)

所述my.dependsOnBase模块仅具有单一的依赖,这是my.base:

module my.dependsOnBase {
    requires my.base;
    exports my.dependsOnBase.baz;
}
Run Code Online (Sandbox Code Playgroud)

当我运行$ gradle javadoc它在my.base上工作正常.但是当它到达my.dependsOnBase时,我得到以下错误输出:

/path/to/my $ gradle javadoc

> Task :dependsOnBase:javadoc FAILED
/path/to/my/dependsOnBase/src/main/java/module-info.java:26: error: module not found: my.base
    requires my.base;
                     ^
1 error


FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':dependsOnBase:javadoc'.
> Javadoc generation failed. Generated Javadoc …
Run Code Online (Sandbox Code Playgroud)

java javadoc gradle java-platform-module-system java-9

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

如何在Dokka中创建嵌套列表?

试图用一个非常常规的结构来记录一些Kotlin代码:

  1. 编号列表.
    • 带有项目符号子列表.
  2. 数字在列表的顶层正确继续的位置.

我所采取的官方Dokka页面甚至没有页面上的"列表"一词.谷歌搜索没有找到任何关于如何做到这一点的信息.救命!

kotlin kdoc kotlin-dokka

3
推荐指数
2
解决办法
251
查看次数

Doxygen-如何链接到C ++文件范围的全局变量

我有一些看起来像这样的代码:

MyStruct.h

struct MyStruct
{
    // ...

    /**
      * \brief Initializes \link MYSTRUCT \endlink.
      */
    static void init();
};

/**
 * \var MYSTRUCT
 * \brief You must call MyStruct::init() before using this variable.
 */
extern MyStruct const * MYSTRUCT;
Run Code Online (Sandbox Code Playgroud)

我想将Doxygen文档MyStruct::init链接到上的Doxygen文档MYSTRUCT。但是,我提供的Doxygen无法解析该链接。我需要做什么才能使链接正常工作?

注意:Windows 7上的Doxygen v 1.8.4

c++ doxygen

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

我如何找到我的.exe的入口点功能?

我觉得这个问题非常愚蠢,但请在评论"这是main(),呃" 之前请耐心看看症状.

我正在使用Visual Studio Express 2012中的一个项目.我们迄今为止仅为Win32(x86)平台构建,但我将.exe构建转换为64位.我现在有一个完全链接的.exe,但是在这个过程中发生了一件有趣的事情:入口点不再被调用.

(C++,console)程序的入口点是在文件范围内声明的C++函数,具有以下签名:int main(int argc, char * argv[]).从第1天开始,这个函数在x86可执行文件中很有用.它没有在x64上调用:

  • 链接器不会抱怨它无法找到入口点.
  • 加载器不会抱怨它无法找到入口点.
  • 当我从命令行运行exe时,它会立即启动并退出,退出代码为127.
  • 例如,gdb 说"在启动程序退出时使用代码0xc000007b".
  • 在stdout或stderr上没有任何输出.
  • 如果我把有趣的事情,在main类似int * p(nullptr); *p = 5;,程序不崩溃(即使没有这个我敢肯定main()没有运行).

可能导致此问题的原因是什么?我该怎么调试呢?我不确定在我的调试器中设置断点的位置,因为我的代码都没有运行...

c++ windows debugging 64-bit visual-studio-2012

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

Java 字符串的实例是否总是有效的 UTF-16?

对于任何给定的 Java String s,我想知道由 表示的字符数组s是否保证是有效的 UTF-16 字符串,例如:

final char[] ch = new char[s.length()];
for (int i = 0; i < ch.length; ++i) {
    ch[i] = s.charAt(i);
}
// Is ch guaranteed to be a valid UTF-16 encoded string?
Run Code Online (Sandbox Code Playgroud)

如果不是,有哪些简单的 Java 语言测试用例会产生无效的 UTF-16?

编辑:有人将问题标记为 [ Is a Java char array always a valid UTF-16 (Big Endian) encoding? 我只能说,aString和 a之间存在差异,以及char[]为什么前者可能(至少在理论上)对其内容有保证而后者没有的原因。我不是在问有关数组的问题,而是在问有关Strings的问题。

java unicode utf-16 char character-encoding

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

对象数组(T[])的默认迭代器实现?

我有一个类,类似于下面的代码。它实现了Iterable<T>iterface,用于在其包含的数组上提供迭代功能。

我一直习惯于使用自己的简单迭代器来迭代数组。然而,我刚刚意识到,至少对于spliterators来说,您可以通过调用 来获得可接受的默认实现Arrays.spliterator(array)。普通Iterator<T>数组上是否有类似的默认实现T

public class MyClass implements Iterable<ContainedClass>
{
    ...
    private final ContainedClass[] array;
    ...

    //
    // INTERFACE: Iterable<ContainedClass>
    //

    @Override
    public Iterator<ContainedClass> iterator() {
        return ??? // I want to return a default implementation, not my own!
    }

    @Override
    public Spliterator<ContainedClass> spliterator() {
        return Arrays.spliterator(array);
    }
}
Run Code Online (Sandbox Code Playgroud)

java arrays iterator java-8

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

什么是Oracle的默认FK行为ON DELETE?

如果我只是规定了表格的约束:

ALTER TABLE childtbl
    ADD (CONSTRAINT myfk
         FOREIGN KEY(mycol)
         REFERENCES parenttbl(mycol))
Run Code Online (Sandbox Code Playgroud)

在Oracle数据库中,如果删除行中的默认行为是什么parenttbl

  • CASCADE
  • SET NULL
  • RESTRICT
  • NO ACTION

sql oracle foreign-keys

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

bash是否同时支持正则表达式替换+默认值?

我有一个问题,我想从bash环境变量中删除前斜线,如果根本没有设置变量,同时给出一个默认值.我需要能够在可赋值给变量的表达式中执行此操作.

zsh,简单的解决方案是:

newvar=${${oldvar:-default}//\//}
Run Code Online (Sandbox Code Playgroud)

但我受到我正在努力使用的项目的限制bash.是否有一个表达式可用于复制上述赋值的右侧bash


一些示例测试用例(oldvarnewvar)

  • <未设置>"default"
  • "/"""
  • "hello world""hello world"
  • "hello/world//!"→ "helloworld!"

bash shell

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