我尝试使用下面的代码连接2个MP3文件.我有一个新文件,我可以播放上半部分(完成第一个文件),但下半部分是静音.新文件的长度是正确的.我做错了什么?
List<Byte[]> files = new List<byte[]>();
var tempfile = File.ReadAllBytes(Path.Combine(path, "1.mp3"));
files.Add(tempfile);
tempfile = File.ReadAllBytes(Path.Combine(path, "2.mp3"));
files.Add(tempfile);
Byte[] a=new Byte[files[0].Length+files[1].Length];
Array.Copy(files[0], a, files[0].Length);
Array.Copy(files[1], a, files[1].Length);
File.WriteAllBytes(Path.Combine(path, "3.mp3") , a);
Run Code Online (Sandbox Code Playgroud) 我正在尝试向需要cookie的网页发出请求.我正在使用HTTPUrlConnection,但响应总是回来说
<div class="body"><p>Your browser's cookie functionality is turned off. Please turn it on.
Run Code Online (Sandbox Code Playgroud)
我如何发出请求,以便查询的服务器认为我已打开cookie.我的代码就是这样的.
private String readPage(String page) throws MalformedURLException {
try {
URL url = new URL(page);
HttpURLConnection uc = (HttpURLConnection) url.openConnection();
uc.connect();
InputStream in = uc.getInputStream();
int v;
while( (v = in.read()) != -1){
sb.append((char)v);
}
in.close();
uc.disconnect();
} catch (IOException e){
e.printStackTrace();
}
return sb.toString();
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试设置以下mailto:link:
<a href='mailto:info@example.com?subject=Testing&body=http://www.google.com?foo=1&bar=2'>Send mail</a>
Run Code Online (Sandbox Code Playgroud)
然而,第二个参数(bar)被切断,因为它被视为mailto链接的参数而不是我正在放入正文的链接.我试过&但它做了同样的事情,因为它被渲染到链接中.
大家好.我看起来似乎是一个微不足道的问题.我有以下JavaScript:
$(function() {
var r = GetResults();
for(var i = 0; i < r.length; i++) {
// Do stuff with r
}
});
function GetResults() {
$.getJSON("/controller/method/", null, function(data) {
return data;
});
}
Run Code Online (Sandbox Code Playgroud)
由于我正在异步调用方法,脚本继续执行,当遇到for循环时,r显然不会有值.我的问题是:当我有一个正在进行异步操作的方法,并且我依赖于它在主块中返回的数据时,如何在数据返回之前暂停执行?就像是:
var r = GetResults(param, function() {
});
Run Code Online (Sandbox Code Playgroud)
其中函数是回调函数.我无法将for循环处理移动到JSON请求的回调函数中,因为我在整个页面中多次重用GetResults的功能,除非我想复制代码.有任何想法吗?
我试图在对象本身上存储每个对象状态的自定义设置,但我不知道如何以面向对象的方式执行此操作.所以:
xml文件中的一个部分是:
<ObjectType>
Run Code Online (Sandbox Code Playgroud)
可以是Blur, Sharpen, Smooth,等等
但是说,Blur只有在类型为的情况下才能存储其他属性Blur,例如:
<BlurType>Gaussian, Smart, etc</BlurType>
Run Code Online (Sandbox Code Playgroud)
此外,我不确定是否应将这些存储为:
<a>something</a>
Run Code Online (Sandbox Code Playgroud)
要么
<a>Type=something</a>
Run Code Online (Sandbox Code Playgroud) 我正在为我正在制作的纸牌游戏添加一些基本动画.(我的第一个iPhone应用程序.)
我正在创建一个自定义的UIView类"AnimationContainer",它从image1翻转到image2,同时从rect1移动到rect2.我的最终目的是让这些容器中最多有四个同时进行转换.
我遇到的问题是动画没有显示image1 ...因此只显示翻转过渡的后半部分.
但是,如果我首先通过触摸重置重置动画,那么一切都很完美.换句话说,如果我反复按Flip,我只能获得一半的转换......但是如果我先按下Reset,那么一切都可以完美地完成一次翻转.
那么,我怎样才能使动画正确重置?
下面是代码,截图,这里是完整的链接:Project Zip File 700k.
alt text http://www.robsteward.com/cardflip.jpg
- (void)displayWithImage1 { //RESET button calls this
self.frame = rect1;
[image2 removeFromSuperview];
[self addSubview:image1];
[self setNeedsDisplay]; //no help: doesn't force an update before animation
}
- (void)runTheAnimation { //FLIP button calls this
[self displayWithImage1]; //<---this is what the reset button calls
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
[UIView setAnimationTransition:transition forView:self cache:NO];
self.frame = rect2;
[image1 removeFromSuperview];
[self addSubview:image2];
[UIView commitAnimations];
}
Run Code Online (Sandbox Code Playgroud)
谢谢!
在Tcl 8.5中,我可以这样做:
apply llength { 1 2 3 }
Run Code Online (Sandbox Code Playgroud)
但是这个适用并没有在v8.4中定义.
如何在v8.4中使用Tcl定义apply?
我需要这个,因为我正在将一些lisp代码转换为Tcl.lisp代码有一些我希望像这样移植的构造:
array set levels {
TRACE 0
DEBUG 1
INFO 2
WARN 3
ERROR 4
}
set LOG_LEVEL INFO
proc setLogLevel { level } {
global LOG_LEVEL
set LOG_LEVEL $level
}
proc log { tag msg args } {
global levels
global LOG_LEVEL
# Filter out any messages below the logging severity threshold.
if { $levels($LOG_LEVEL) <= $levels($tag) } then {
apply format $msg $args
}
}
proc logTrace …Run Code Online (Sandbox Code Playgroud) 我希望我不要因为问这么基本的东西而受到抨击.我可以通过Google获得答案,但我希望听到一些不是来自教科书的内容.
我正在编写一个单元测试来验证我的IDictionary密钥是顺序的.
由于Keys属性是一个ICollection<T>,我想枚举集合并将Key值打印到控制台.
尝试使用简单for循环打印Key值时:
for (int i = 0; i < unPivotedData.Count; i++)
{
Console.WriteLine(unPivotedData.Keys[i]);
}
Run Code Online (Sandbox Code Playgroud)
我收到以下编译错误:
Cannot apply indexing with [] to an expression of type 'System.Collections.Generic.ICollection<int>'
Run Code Online (Sandbox Code Playgroud)
但是,当我使用foreach循环时:
foreach(int key in unPivotedData.Keys)
{
Console.WriteLine(key);
}
Run Code Online (Sandbox Code Playgroud)
一切都很好.
我理解索引器的作用以及它是如何实现的,但它是如何foreach工作的?我不明白是怎么foreach能工作,并能在for编译错误的结果.
我在这里错过了Enumeration的基础吗?
干杯!
编辑:此外,两者之间是否存在性能差异?我知道我不能使用forIDictionary,但如果我使用IList,我可以.for移动速度是否快于foreach或者性能增益可以忽略不计
我正在为并行程序开发一个运行时系统,它可以利用跨多个进程的公共地址空间布局,可能分布在几千个节点上.很多时候,为此环境构建的软件在默认启用地址空间随机化的Linux系统上运行,用户可能不希望或无法在系统范围内禁用它(通过sysctl -w kernel.randomize_va_space=0等).这对并行程序施加了一些限制,并且可能损害性能.因此,我们想弄清楚如何为我们构建的二进制文件禁用它.安全性不是问题,因为该软件始终在受控环境中运行.
我发现了对各种标志和变量的引用,比如ET_EXEC,EF_AS_NO_RANDOM(显然从未合并过?)和PF_RANDOMIZE,但我找不到任何描述我可以做什么来设置这些标志的文档.一个理想的答案会告诉我什么编译器/汇编器/链接器标志将禁用生成的二进制文件的随机化,以及它工作的工具链/内核的版本.接下来最好的是在构建二进制文件后执行相同操作的工具.
由于我确信有人会提出建议,我已经知道我们可以在运行时进行此更改setarch -R,但最好将其记录在可执行文件中.
看起来paxctl -rx应该做的伎俩,但它似乎不适用于不包含PaX补丁的内核中使用的当前方法.
专业网页设计师如何创建跨浏览器的CSS?它通常是手工完成的,还是可以简化流程的工具包,就像YUI对JavaScript一样?我宁愿远离像DreamWeaver这样的WYSIWYG编辑器.谢谢!