问题列表 - 第38947页

如何将InputStream转换为ZIP格式?

我有一个 InputStream 对象,它实际上是一个 zip 文件。我想将其改回 zip 文件并保存。我正在使用 DWR 的 FileTransfer 类对象来接收客户端上传的数据。

FileTransfer有 3 个方法,getInputStream()是其中之一。它从 FileTransfer 对象返回 InputStream。

就我而言,fileTransfer 对象也保存 zip 文件以及 InputStream 对象。我已经在谷歌上做了很多搜索。但我找不到一个示例来说明 InputStream 到 zip 转换。

更新

String zipName = file.getName();
String zipType = file.getMimeType();
InputStream zipStream = file.getInputStream();
ZipInputStream zis = new ZipInputStream(zipStream);
System.out.println("File Name: "+zipName+"\n"+"File Type: "+zipType);
int c;
File f2 = new File(DATA_STORE_LOC+dat+".zip");
path.setPath2(DATA_STORE_LOC+dat+".zip");
FileOutputStream fos = new FileOutputStream(f2);
ZipOutputStream zos = new ZipOutputStream(fos);
c = zis.read();
System.out.println(c);
while ((c = zis.read(BUFFER)) != …
Run Code Online (Sandbox Code Playgroud)

java zip dwr

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

.NET - 限制执行单​​元的实例数

假设我有一个用C#编写的应用程序,名为EquipCtrl.exe,它在PC上作为本地进程运行,以控制一台设备.

显然,我希望在每台PC上只运行一个Equipctrl实例.如果我有两个装备来控制每台PC,那么我会将它限制为每台PC两个实例.

我做的方式是1.进程名称之一.我将进程命名为EqCtrl,在进程启动时,它将使用名称"EqCtrl"计算数字进程.2.执行名称.在启动时,使用执行名称EquipCtrl.exe计算进程数.3.登记处记录.4. SQL Server数据库记录.

对我来说,进程名称或执行名称检测是最简单的,也是我最常做的(如果不是全部的话).但是,他们容易受到名字冲突的影响.即使我进一步找出执行路径,也可以通过将执行文件复制到另一个文件夹来规避限制.

在.NET上执行执行限制的最佳方法是什么?为什么?注册表记录是最好的方式吗?

.net c# executable multiton application-singleton

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

Perl脚本(或任何内容)总计CSV列

我写了(在其他人的帮助下)一个awk命令来汇总CSV文件中的列.不幸的是,我在谷歌搜索后awk因为分隔符并不总是相同而在处理CSV文件方面表现不佳(即用引号括起来时应忽略逗号).

似乎Perl脚本可能做得更好.是否可以使用单行Perl脚本(或几乎简洁的东西)实现与此awk命令相同的功能,该命令总计CSV文件的第5列?

cat file.csv | awk -F "\"*,\"*" '{s+=$5} END {printf("%01.2f\n", s)}'
Run Code Online (Sandbox Code Playgroud)

我并没有特别嫁给Perl,但我希望避免编写一个完整的PHP脚本.这时我可以轻松编写一个PHP脚本,但是现在我已经走到这一步了,我想看看我是否能够完成它.

csv perl awk

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

netbank登录加密狗如何工作?

这个问题纯粹是为了满足我自己的好奇心.

在挪威,netbanks通常使用所有账户持有人都有的计算器式(物理)加密狗.您在加密狗中键入您的个人PIN,它会生成一个八位数的代码,您可以使用该代码在线登录.设备本身未连接到网络.

谁知道这个系统是如何工作的?

我最好的猜测是每个加密狗都有一个预生成的数字序列存储.因此,如果您键入已使用的数字或未来太远的数字,登录过程将失败.它可能还依赖于内部时钟来生成数字.到目前为止,我的程序员都没有能够回答这个问题.

[编辑]

特别是我很好奇它在挪威如何做到这一点.

security onlinebanking

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

jQuery在请求体中发布有效的json

因此,根据jQuery Ajax文档,它在发送请求时以查询字符串的形式序列化数据,但设置processData:false应该允许我在正文中发送实际的JSON.不幸的是,我很难确定第一个,如果发生这种情况,那么第二个对象看起来是什么,它被发送到服务器.我所知道的是服务器没有解析我发送的内容.

使用http客户端发布对象文字时{someKey:'someData'},它可以工作.但是当使用jQuery时data: {someKey:'someData'},它会失败.不幸的是,当我在Safari中分析请求时,它说消息有效负载是[object Object]......很棒......而且在Firefox中帖子是空白的...

在Java端记录正文内容时,它实际上[object Object]是如何发送REAL JSON数据的?

有没有人有过在请求体中序列化JSON数据的Java服务的经验,请求是从jQuery发送的?

BTW这里是完整的$ .ajax请求:

$.ajax({
    contentType: 'application/json',
    data: {
        "command": "on"
    },
    dataType: 'json',
    success: function(data){
        app.log("device control succeeded");
    },
    error: function(){
        app.log("Device control failed");
    },
    processData: false,
    type: 'POST',
    url: '/devices/{device_id}/control'
});
Run Code Online (Sandbox Code Playgroud)

ajax jquery json xmlhttprequest

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

如何在C中使用布尔数据类型?

我只是用C编写代码和原来它没有一个布尔/布尔数据类型.是否有任何C库,我可以包括给我回一个布尔/布尔数据类型的能力吗?

c types boolean

42
推荐指数
3
解决办法
20万
查看次数

如何为Java程序创建.msi文件?(日食)

我有一个java项目,我希望打包和出售.如何创建一个将在其他Windows计算机上安装我的程序的.msi文件?如果有任何教程,请指导我们.如果这与如何创建.msi文件有关,我也在使用Eclipse.

谢谢

java eclipse windows-installer

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

C89中的可变长度数组?

我已经读过C89不支持可变长度数组,但是下面的实验似乎反驳了:

#include <stdio.h>

int main()
{
   int x;
   printf("Enter a number: ");
   scanf("%d", &x);
   int a[x];
   a[0] = 1;
   // ...
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我这样编译时(假设文件名是va_test.c):

gcc va_test.c -std=c89 -o va_test
Run Code Online (Sandbox Code Playgroud)

有用...

我错过了什么?:-)

c arrays gcc c99 c89

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

c#我如何返回通用列表?

List<decimal> FindSumSubset(decimal sum, List<decimal> list)
        {
           for (int i = 0; i < list.Count; i++)
           {
              decimal value = list[i];
              if (sum - value == 0.0m)
              {
                  return new List<decimal> { value };
              }
              else
              {
                  var subset = FindSumSubset(sum - value, list.GetRange(i + 1, list.Count -i));
                  if (subset != null)
                  {
                      return subset.Add(value);


                  }
              }
           }
           return null;
        }
Run Code Online (Sandbox Code Playgroud)

我在这一行上收到错误:

 return subset.Add(value);
Run Code Online (Sandbox Code Playgroud)

错误:

Error   1   Cannot implicitly convert type 'void' to 'System.Collections.Generic.List<decimal>'
Run Code Online (Sandbox Code Playgroud)

有谁知道我怎么解决这个>?

c#

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

初始类型系统理论的书籍

我想研究类型系统理论.我没有类型系统理论的任何背景,所以我或多或少是一个初学者(除了我读过的关于这个主题的文章,我发现由于使用的符号而令人生畏).什么是可以让我入门的好书?我正在看Benjamin C. Pierce的"类型和编程语言"一书.这适合初学者还是太难?如果我开始学习还能用什么其他东西太难了?

谢谢,

-

干杯,亚历克斯

computer-science types type-theory

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