小编Erw*_*idt的帖子

在MXUnit中测试Isjson

我正在研究CFML的MxUnit测试框架.在其中,我想检查函数的返回值是否是有效的JSON.目前我正在使用:

assertEquals(True,IsJSON(userEventItems),'The return must be json');
Run Code Online (Sandbox Code Playgroud)

是否有任何MXUnit函数来检查断言是否是JSON,就像assertIsQuery()在MXUnit中一样?

testing coldfusion json testcase mxunit

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

当用户在输入中输入特定字符串时中断程序

我想让用户输入一些字符串,程序接受控制台输入,直到用户输入“/done”..所以它是如何工作的:

  1. 打印给用户:输入您的字符串

  2. 用户输入:你好日食。

嗨测试等等等等

bla 456 testmore /done

只要用户在任何大小的任何字符串中输入 /done,程序就会中断。如果您按“回车”键,程序将不会结束。它只会在您输入 /done 时结束.. 到目前为止我是如何设置我的程序的:

Scanner 123 = new Scanner(System.in);
string input = "";
System.out.println("Enter your string: ");

do {
    input = 123.nextLine();
    System.out.print("Rest of program here..");
}

while (!input.equals("/done"));
Run Code Online (Sandbox Code Playgroud)

我尝试在 while 循环下放置如下所示的内容,但我认为我做得不对。

while (!input.equals("/done"));
    if input.equals("/done");
    break;
}
Run Code Online (Sandbox Code Playgroud)

我知道使用 do-while 循环,只要 while 中的布尔值是假的,它就会继续。所以对于我的程序,程序接受输入直到用户输入 /done 所以布尔值是假的,直到输入字符串 /done 。然后根据上面的逻辑,一旦输入等于“/完成”,程序就会中断

关于我做错了什么的任何想法?

java string break do-while

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

在Windows控制台中从Java代码问题中打印出unicode

我在Windows控制台中打印出一个unicode符号时遇到问题.

这是打印出unicode符号值的java代码;

System.out.print("\u22A2 ");
Run Code Online (Sandbox Code Playgroud)

当我在Eclipse中使用UTF-8编码设置运行程序时,问题不存在,但是当涉及到Windows控制台时,符号会被问号替换.

以下是为了尝试克服这个问题,没有成功;

  • 将Windows控制台的字体更改为Lucida Console.

  • 每次我运行Windows控制台时,我都会更改编码设置,即使用 chcp 65001

我尝试了几次的额外步骤是运行带有参数的java文件,即java -Dfile.encoding=UTF-8 Filter(其中"Filter"是类的名称)

java unicode encoding cmd utf-8

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

使用静态枚举类模拟类时出现“无法使用名称转换类”错误

java.lang.IllegalStateException: Failed to transform class with name com.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX$ReadSets. Reason: null
    at org.powermock.core.classloader.MockClassLoader.loadMockClass(MockClassLoader.java:219)
    at org.powermock.core.classloader.MockClassLoader.loadModifiedClass(MockClassLoader.java:147)
    at org.powermock.core.classloader.DeferSupportingClassLoader.loadClass(DeferSupportingClassLoader.java:67)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114)
    at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125)
    at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
    at sun.reflect.annotation.AnnotationParser.parseSig(AnnotationParser.java:390)
    at sun.reflect.annotation.AnnotationParser.parseClassValue(AnnotationParser.java:371)
    at sun.reflect.annotation.AnnotationParser.parseClassArray(AnnotationParser.java:673)
    at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:480)
    at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:306)
    at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:241)
    at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:88)
    at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:70)
    at java.lang.Class.initAnnotationsIfNecessary(Class.java:3089)
    at java.lang.Class.getAnnotations(Class.java:3069)
    at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl.classAnnotations(PowerMockJUnit44RunnerDelegateImpl.java:163)
    at org.powermock.modules.junit4.internal.impl.PowerMockJUnit44RunnerDelegateImpl.getDescription(PowerMockJUnit44RunnerDelegateImpl.java:155)
    at org.powermock.modules.junit4.common.internal.impl.JUnit4TestSuiteChunkerImpl.getDescription(JUnit4TestSuiteChunkerImpl.java:171)
    at org.powermock.modules.junit4.common.internal.impl.AbstractCommonPowerMockRunner.getDescription(AbstractCommonPowerMockRunner.java:47)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestClassReference.sendTree(JUnit4TestClassReference.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.sendTrees(RemoteTestRunner.java:476)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:464)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: java.lang.NullPointerException
    at javassist.compiler.MemberResolver.lookupMethod(MemberResolver.java:110)
    at javassist.compiler.MemberResolver.lookupMethod(MemberResolver.java:96)
    at javassist.compiler.TypeChecker.atMethodCallCore(TypeChecker.java:704)
    at javassist.compiler.TypeChecker.atCallExpr(TypeChecker.java:681) …
Run Code Online (Sandbox Code Playgroud)

java unit-testing junit4 powermock

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

h264 u(v)frame_num,pic_order_cnt_lsb和slice_group_change_cycle的解码

根据"Slice Header Syntax"(在ITU-T Rec.h264中描述)frame_num,pic_order_cnt_lsb并且slice_group_change_cycle具有u(v)描述符,该描述符是使用可变位数的无符号整数.

该文件指出

"比特数的变化取决于其他语法元素的值."

你知道如何找出用来存储位的数量frame_num,pic_order_cnt_lsbslice_group_change_cycle

[引用的文档指出read_bits(n)功能,不幸的是我无法自己解决.你能帮我吗?]

decoding avfoundation h.264

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

在System.out上同步

System.out通过调用System.setOut和更改为打印到文件System.setErr.

每天午夜,我们都想重命名(存档)当前日志文件,并创建一个新文件.

if (out != null) {
    out.close();
    out = null;
    File f = new File(outputfilename);
    f.renameTo(new File(dir.getPath().replace(".log", "-" + System.currentTimeMillis() + ".log")))
    StartLogFile();
}
Run Code Online (Sandbox Code Playgroud)

StartLogFile():

if (out == null) {
    out = new FileOutputStream(outputfilename, true);
    System.setOut(new PrintStream(out));
    System.setErr(new PrintStream(out));
}
Run Code Online (Sandbox Code Playgroud)

我已经把异常处理了.

我担心的是,如果某些东西试图在两者之间打印out.close()setOut/ setErr我将错过一个日志.

我真正的问题是,如何通过其他调用来创建这个原子System.out.println?我正在考虑尝试

synchronized (System.out) {

}
Run Code Online (Sandbox Code Playgroud)

但我真的不确定这里的内在锁是否有任何作用.特别是因为我在操作期间使out对象无效.

有谁知道我怎么能确保在这里正确同步?

java synchronization file

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

计算两个小时的字符串之间的差异

我有一个包含某些小时前的字符串。14:34,现在我要计算当前小时前的时差。21:36-14:34= 7小时2分钟(或类似的时间)。有人可以向我解释我该怎么做?

java time jodatime java-time

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

Oracle | ORA-01439:要修改的列必须为空才能更改数据类型.无法将数据类型编号更改为nvarchar在oracle 10g中

我希望它没有数据删除和移动.

我无法将数据类型号更改为nvarchar在oracle 10g中.它的显示消息如ORA-01439:要修改的列必须为空才能更改数据类型.

我有表中的数据和列已经设置为NOT NUll所以我不能将其设置为null或空白.并且Altering列是主键,它是与外键相关的表数.

是否有任何快速解决方案来修复它.

oracle alter-table oracle10g

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

在 IntelliJ 上调试或运行时线程数不同

我正在使用以下代码:-

public static void main(String[] args) {
        int threadPool = 4;
        System.out.println("initial count---" + Thread.activeCount());
        Thread.currentThread();
}
Run Code Online (Sandbox Code Playgroud)

在 IntelliJ 上调试时输出不同:- initial count---1

在 IntelliJ 上运行时:- initial count---2

当我运行这个程序时,我无法理解什么是额外的线程。

multithreading intellij-idea

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

在加载时要在属性文件中放入哪些值才能获取 IOException?

我正在从 Java 项目的类路径中读取文件。

示例代码:

      public static Properties loadPropertyFile(String fileName) {
        Properties properties = new Properties();    
        InputStream inputStream = PropertyReader.class.getClassLoader().getResourceAsStream(fileName);

        if (inputStream != null) {
            try {
                properties.load(inputStream);
            } catch (IOException e) {
                e.printStackTrace();
            }
        } else {
            throw new Exception("Property file: [" + fileName + "] not found in the classpath");
        }
        return properties;
      }
Run Code Online (Sandbox Code Playgroud)

运行良好。我正在为此代码编写 Junit 测试。如何为IOExceptionin创建场景properties.load(inputStream)

我应该在properties.file中放入什么值才能获得IOException

java junit properties ioexception

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