问题列表 - 第1704页

如何在J2ME中拆分字符串?

如何以有效的方式在J2ME中拆分字符串?

有一个StringTokenizerString.split(String regex)在标准版(J2SE)中,但它们在微版(J2ME,MIDP)中不存在.

java string algorithm java-me

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

使用Java创建.zip存档的缓冲区大小是多少?

我使用此代码创建一个带有文件列表的.zip:

ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipFile));

for (int i=0;i<srcFiles.length;i++){
    String fileName=srcFiles[i].getName();
    ZipEntry zipEntry = new ZipEntry(fileName);
    zos.putNextEntry(zipEntry);
    InputStream fis = new FileInputStream(srcFiles[i]);
    int read;
    for(byte[] buffer=new byte[1024];(read=fis.read(buffer))>0;){
        zos.write(buffer,0,read);
    }
    fis.close();
    zos.closeEntry();
}
zos.close();
Run Code Online (Sandbox Code Playgroud)

我不知道zip算法和ZipOutputStream是如何工作的,如果它在我读取并发送到'zos'之前写入所有数据,结果文件的字节大小可能与我选择另一个缓冲区大小不同.

换句话说,我不知道算法是否像:

读取数据 - >处理数据 - >创建.ZIP

要么

读取数据块 - >处理数据块 - >写入.ZIP中的块 - > | ^ ------------------------------------------------- -------------------------------------------------- --------------------------

如果是这种情况,哪种缓冲区大小最好?

更新:

我测试了这段代码,将缓冲区大小从1024更改为64,并压缩相同的文件:使用1024字节时,80 KB结果文件比使用64字节缓冲区小3个字节.在最短的时间内生成最小.zip的最佳缓冲区大小是多少?

java zip buffer

7
推荐指数
1
解决办法
5358
查看次数

LINQ2SQL中的EntitySet与Table查询性能

在LINQ to SQL类,为什么属性是从外键创建EntitySet对象,实施IEnumerable,作为地方上的对象DataContextTable其实现目标IQueryable

编辑:澄清一下,这是一个例子,说明了我想要了解的内容.这个例子:

ctx.Matches.Where(x => x.MatchID == 1).Single()
           .MatchPlayers.Max(x => x.Score);
Run Code Online (Sandbox Code Playgroud)

在以下位置点击数据库两次:

ctx.MatchPlayers.Where(x => x.MatchID == 1)
                .Max(x => x.Score);
Run Code Online (Sandbox Code Playgroud)

只运行1个查询.以下是痕迹:

exec sp_executesql N'SELECT [t0].[MatchID], [t0].[Date]
FROM [dbo].[Matches] AS [t0]
WHERE [t0].[MatchID] = @p0',N'@p0 int',@p0=1
go
exec sp_executesql N'SELECT [t0].[MatchID], [t0].[PlayerID], [t0].[Score]
FROM [dbo].[MatchPlayers] AS [t0]
WHERE [t0].[MatchID] = @p0',N'@p0 int',@p0=1
go
Run Code Online (Sandbox Code Playgroud)

exec sp_executesql N'SELECT MAX([t0].[Score]) AS [value]
FROM [dbo].[MatchPlayers] AS [t0]
WHERE [t0].[MatchID] = @p0',N'@p0 int',@p0=1 …
Run Code Online (Sandbox Code Playgroud)

linq ienumerable iqueryable linq-to-sql

9
推荐指数
1
解决办法
4477
查看次数

你如何处理重构与合并需求之间的紧张关系?

我们在交付新版本时的政策是在我们的VCS中创建一个分支并将其处理给我们的QA团队.当后者发出绿灯时,我们会标记并发布我们的产品.分支保持接收(仅)错误修复,以便我们可以创建技术版本.这些错误修复随后合并在主干上.

在此期间,主干会看到主要的开发工作,并且可能会受到重构更改.

问题是需要有一个稳定的主干之间存在紧张关系(以便错误修复的合并成功 - 如果代码已被提取到另一个方法,或者移动到另一个类,通常不能)在引入新功能时需要重构它.

我们的政策是在经过足够的时间之前不进行任何重构,并且分支足够稳定.在这种情况下,可以开始对主干进行重构更改,并在主干和分支上手动提交错误修复.

但这意味着开发人员必须等待一段时间才能在主干上进行任何重构更改,因为这可能会破坏从分支到主干的后续合并.并且必须手动将分支中的错误移植到主干上是很痛苦的.在我看来,这妨碍了发展......

你怎么处理这种紧张局势?

谢谢.

version-control merge refactoring branch release

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

单表继承

我对DB设计问题的回答提出了一种叫做单表继承的东西.我已经对此进行了一些搜索,但我似乎无法找到关于它的更清晰的信息.

基本上我从中可以理解的是,你有一个包含所有字段的大表,还有一个类型字段 - 然后你的ORM层使用type字段为你提供不同的对象视图.那是对的吗?

更重要的是,单表继承是一种"认可的"数据库设计技术吗?我的意思是说使用它是"明智的"吗?使用它也是安全的,还是会引起问题?

另一个问题是它在rails中的效果如何?我从rails找到了一些引用 - 但它是否以非传统的方式做事?

任何帮助非常感谢.

database-design ruby-on-rails single-table-inheritance

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

如何强制ActiveRecord重新加载一个类?

我正在创建一系列迁移,其中一些是标准的"创建表"或"修改表"迁移,其中一些迁移修改数据.我正在使用我的实际ActiveRecord模型来修改数据,a:

Blog.all.each do |blog|
  update_some_blog_attributes_to_match_new_schema
end
Run Code Online (Sandbox Code Playgroud)

问题是,如果我加载Blog类,然后修改表,然后再次使用Blog类,模型具有旧的表定义,并且无法保存到新表.有没有办法重新加载类及其属性定义,以便我可以重用它们?

ruby migration activerecord ruby-on-rails

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

如何在Firefox中跟踪和调试JavaScript内存泄漏?

我一直试图在一个月内跟踪这个,但没有任何成功.我在汽车广告网站上有这段代码,基本上允许缩略图在搜索结果中旋转,因为汽车有多张图片.您可以在以下操作中看到它:

http://www.abcavendre.com/4506691919/

它建立在mootools 1.2框架之上.问题是,当一个页面充满了那些旋转图片时,这个脚本在Firefox 3下会消耗相当多的内存,例如这个库存页面:

http://www.abcavendre.com/Vitrine/Israel_Huttman/

您可以在此处查看相关脚本的来源:

http://www.abcavendre.com/scripts/showcase_small.js

关于什么导致内存泄漏的任何想法?奇怪的是这个代码在IE7下运行正常.

javascript mootools memory-leaks

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

WPF中的StaticResource和DynamicResource有什么区别?

在WPF中使用画笔,模板和样式等资源时,可以将它们指定为StaticResources

<Rectangle Fill="{StaticResource MyBrush}" />
Run Code Online (Sandbox Code Playgroud)

或者作为DynamicResource

<ItemsControl ItemTemplate="{DynamicResource MyItemTemplate}"  />
Run Code Online (Sandbox Code Playgroud)

大多数时候(总是?),只有一个工作,另一个将在运行时抛出异常.但我想知道原因:

  • 主要区别是什么?像记忆或性能影响
  • WPF中的规则是"画笔总是静态的"和"模板总是动态的"等吗?

假设静态与动态之间的选择并不像看起来那么随意......但我没有看到模式.

.net wpf resources xaml

455
推荐指数
9
解决办法
17万
查看次数

将const char*缓存为返回类型

在我的C++上读了一下,发现这篇关于RTTI(运行时类型识别)的文章:http://msdn.microsoft.com/en-us/library/70ky2y6k(VS.80) .aspx.嗯,这是另一个主题:) - 但是,我在type_info-class中偶然发现了一个奇怪的说法,即关于::name-method.它说:" type_info::name成员函数返回一个const char*以空字符结尾的字符串,表示该类型的人类可读名称.指向的内存是缓存的,不应该直接取消分配."

你怎么能自己实现这样的东西!?我以前经常在这个问题上苦苦挣扎,因为我不想char为调用者删除一个新的-array,所以我坚持std::string到目前为止.

因此,为了简单起见,假设我想创建一个返回的方法"Hello World!",让我们调用它

const char *getHelloString() const;
Run Code Online (Sandbox Code Playgroud)

就个人而言,我会以某种方式使它(Pseudo):

const char *getHelloString() const
{
  char *returnVal = new char[13];
  strcpy("HelloWorld!", returnVal);

  return returnVal
}
Run Code Online (Sandbox Code Playgroud)

..但这意味着调用者应该delete[]在我的返回指针上做一个:(

Thx提前

c++ return-value char

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

C#:这是如何工作的:单位myUnit = 5;

我刚刚注意到你可以在C#中做到这一点:

Unit myUnit = 5;
Run Code Online (Sandbox Code Playgroud)

而不是必须这样做:

Unit myUnit = new Unit(5);
Run Code Online (Sandbox Code Playgroud)

有谁知道我怎么能用自己的结构实现这个目标?我看了一下带有反射器的Unit结构,并注意到正在使用TypeConverter属性,但是在为我的struct创建了一个自定义TypeConverter后,我仍然无法让编译器允许这种方便的语法.

c# struct typeconverter

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