小编Bas*_*que的帖子

~~ Postgres的操作员

我在Postgres有一个查询:

SELECT DISTINCT a.profn FROM tprof a, sap_tstc b, tgrc c 
WHERE ((c.grcid ~~ a.grcid) 
AND ((c.tcode) = (b.tcode)));
Run Code Online (Sandbox Code Playgroud)

什么~~意思?

postgresql operators

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

Joda-Time获得一周的一周

是否可以使用Joda-Time解析日期并提取月份周.我知道有可能在一年中这么做,但我找不到如何/如果有可能提取一个月的一周.

示例:2014-06_03其中03是本月的第三周

DateTime dt = new DateTime();
String yearMonthWeekOfMonth = dt.toString("<PATTERN for the week of month>");
Run Code Online (Sandbox Code Playgroud)

我尝试过"yyyyMMW"模式,但不接受.

datetime jodatime

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

如何在Vaadin 7中创建一对单选按钮来表示真/假值但是本地化文本?

我想在Vaadin 7中使用一对单选按钮来表示布尔值,其中每个值都有一个文本显示,例如"活动"和"非活动".

标有

java radio-button vaadin vaadin7

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

Java - 使用Apache.commons.csv写入CSV文件

在Java中使用apache.commons.csv库.我正在使用以下代码从网页上读取CSV文件:

InputStream input = new URL(url).openStream();
        Reader reader = new InputStreamReader(input, "UTF-8");

        defaultParser = new CSVParser(reader, CSVFormat.DEFAULT);
        excelParser = new CSVParser(reader, CSVFormat.EXCEL.withHeader()); 

        defaultParsedData = defaultParser.getRecords();
        excelParsedData = excelParser.getRecords();
Run Code Online (Sandbox Code Playgroud)

但是,我在这个库中找不到一个方法可以轻松地将这个文件写入我的计算机,以便打开它并稍后从中读取.

我试过这段代码来保存文件.

String outputFile = savePath+".csv";
        CSVPrinter csvFilePrinter = null;
        CSVFormat csvFileFormat = CSVFormat.EXCEL.withHeader();
        FileWriter fileWriter = new FileWriter(outputFile);
        csvFilePrinter = new CSVPrinter(fileWriter, csvFileFormat);

        for (CSVRecord csvRecord : excelParser) {
            for(String dataPoint: csvRecord){
                csvFilePrinter.print(dataPoint);
            }
            csvFilePrinter.print('\n');
         }

        fileWriter.flush();
        fileWriter.close();
        csvFilePrinter.close();
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用此代码读取文件时,没有打印出来:

InputStream input = new FileInputStream(cvsFilePath);
        Reader reader …
Run Code Online (Sandbox Code Playgroud)

java csv apache-commons-csv

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

iOS 中的 ODR 内容有安全性或加密吗?(按需资源)

使用Apple\xe2\x80\x99s点播资源(ODR)功能时,下载的资源是否有保护?有DRM功能吗?

\n

下载的文件是否经过加密或以其他方式防止在 Mac 或 PC 上检查应用程序内容的人窥探?

\n

我可以做些什么来对下载的资源进行复制保护吗?

\n

drm copy-protection ios on-demand-resources

6
推荐指数
0
解决办法
177
查看次数

使用H2数据库在JDBC中从负-509变为正510

-509 VS 510

我使用JDBC看到了某种改变或错误的数据.所以我观察在Java 8 Update 151上使用H2 Database版本1.4.196.

这是一个完整的例子.

注意我们如何检索三次日期值,首先作为LocalDate对象,其次作为文本,第三次作为int从演员LocalDate对象中提取的年份数.在文本版本中,我们可以看到年份确实是负面的.神秘地说,LocalDate它具有不同的年份数,而且是积极的而不是消极的.好像是一个bug.

private void doIt ( )
{
    System.out.println( "BASIL - Running doIt." );
    try
    {
        Class.forName( "org.h2.Driver" );
    } catch ( ClassNotFoundException e )
    {
        e.printStackTrace( );
    }

    try (
            Connection conn = DriverManager.getConnection( "jdbc:h2:mem:" ) ;  // Unnamed throw-away in-memory database.
    )
    {
        conn.setAutoCommit( true );
        String sqlCreate = "CREATE TABLE history  ( id IDENTITY , when  DATE ); "; …
Run Code Online (Sandbox Code Playgroud)

java jdbc h2 java-8 localdate

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

Maven“始终更新快照”的IntelliJ 2017.2设置有什么作用?

该课题成功地应答通过检查Preferences/ Settings> Build, Execution, Deployment> Build tools> Maven> Always update snapshots在(复选框)的IntelliJ IDEA

IntelliJ 2017.2>首选项/设置>构建,执行,部署>构建工具> Maven>始终更新快照的屏幕快照(复选框)

那个设置到底是做什么的?

该文档没有帮助。

一律更新快照

如果要IntelliJ IDEA同步更新快照,请选中此复选框。

  • 什么快照?
  • 与什么同步?
  • 为什么我想要保持同步?
  • 为什么默认情况下不选中此选项?

java intellij-idea maven

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

如何将 ISO 8601 期间转换为人类可读的字符串 [Android Studio]?

关于如何将ISO 8601 持续时间格式 PnYnMnDTnHnMnS(例如:P1W、P5D、P3D)转换为天数的任何建议?

我试图以一种向用户显示免费试用天数的方式设置按钮的文本。

Google 通过键“freeTrialPeriod”以 ISO 8601 持续时间格式提供帐单信息,但我需要用户可以实际阅读的数字。

该应用程序的当前最低 API 级别是 18,因此 Java 8 中的 Duration 和 Period 类将无济于事,因为它们适用于等于或大于 26 的 API。

我已将以下方法设置为解决方法,但它看起来不是最佳解决方案:

private String getTrialPeriodMessage() {
        String period = "";

        try {
            period = subsInfoObjects.get(SUBS_PRODUCT_ID).getString("freeTrialPeriod");
        } catch (Exception e) {
            e.printStackTrace();
        }

        switch (period) {
            case "P1W":
                period = "7";
                break;
            case "P2W":
                period = "14";
                break;
            case "P3W":
                period = "21";
                break;
            case "P4W":
                period = "28";
                break;
            case "P7D":
                period = "7"; …
Run Code Online (Sandbox Code Playgroud)

java android iso8601 period trial

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

为什么 UTF-8 BOM 字节 efbbbf 可以替换为 \ufeff?

字节顺序标记(BOM)UTF-8EF BB BF,如在说明中的Unicode 9的部分23.8规范(搜索“签名”)。

Java中的许多解决方案都只是一个简单的一行代码:

 replace("\uFEFF", "")
Run Code Online (Sandbox Code Playgroud)

我不明白这为什么有效。

这是我的测试代码。我在调用后检查二进制文件String#replace,我发现 EF BB BF 已被删除。查看此代码在 IdeOne.com 上实时运行

太神奇了。为什么这样做?

@Test
public void shit() throws Exception{
    byte[] b = new byte[]{-17,-69,-65, 97,97,97};//EF BB BF 61 61 61
    char[] c = new char[10];
    new InputStreamReader(new ByteArrayInputStream(b),"UTF-8").read(c);
    byte[] bytes = new StringBuilder().append(c).toString().replace("\uFEFF", "").getBytes();//
    for(byte bt: bytes){//61 61 61, we can see EF BB BF is indeed removed
        System.out.println(bt);
    }
}
Run Code Online (Sandbox Code Playgroud)

java byte-order-mark

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

Java实现多个接口

有时候,我看到一个类实现接口AB,但A已经扩展B,这背后的原因的任何?

AbstractInterruptibleChannel班级为例。

public abstract class AbstractInterruptibleChannel
    implements Channel, InterruptibleChannel
Run Code Online (Sandbox Code Playgroud)

但已经InterruptibleChannel扩展Channel

public interface InterruptibleChannel
    extends Channel
Run Code Online (Sandbox Code Playgroud)

java

6
推荐指数
0
解决办法
102
查看次数