在本地打开非常大的XML文件时,在您的计算机上,几乎可以确定该文件需要一段时间才能打开 - 这通常意味着您的计算机因为认为它没有响应而锁定.
如果您为用户提供他们使用的相当复杂的数据库或系统的XML备份,这就是一个问题 - 他们能够打开大型备份,更不用说使用它们的可能性很小.
我使用XSLT向用户呈现可读的备份.以同样的方式,是否可以在数据时仅拉取一个页面,以防止整个文件一次性被读取,从而导致上述问题.
我想答案只是一个没有 - 但我想知道是否有其他人看到了同样的问题并解决了它们.
注意:这仅在本地计算机上,不能要求Internet连接.如果它使事情变得容易,可以使用JavaScript.
我跟朋友争吵了.他说我可以从函数返回指向本地数据的指针.这不是我所学到的,但我找不到反对他证明我的知识的反驳.
这是一个例子:
char *name() {
char n[10] = "bodacydo!";
return n;
}
Run Code Online (Sandbox Code Playgroud)
它用作:
int main() {
char *n = name();
printf("%s\n", n);
}
Run Code Online (Sandbox Code Playgroud)
他说这完全没问题,因为在一个程序调用name之后,它会返回一个指向n的指针,然后就会打印它.同时程序中没有其他任何事情发生,因为它是单线程的,执行是串行的.
我找不到反驳的论点.我永远不会写那样的代码,但他很顽固,并说这完全没问题.如果我是他的老板,我会解雇他是一个顽固的白痴,但我找不到反驳的论点.
另一个例子:
int *number() {
int n = 5;
return &n;
}
int main() {
int *a = number();
int b = 9;
int c = *a * b;
printf("%d\n", c);
}
Run Code Online (Sandbox Code Playgroud)
我得到一些好的答案后,我会把这个链接发给他,所以他至少学会了一些东西.
我想将Joda Time UTC DateTime对象转换为本地时间.
这是一种艰苦的方法,它似乎有效.但必须有更好的方法.
这是没有周围声明的代码(在Scala中):
val dtUTC = new DateTime("2010-10-28T04:00")
println("dtUTC = " + dtUTC)
val dtLocal = timestampLocal(dtUTC)
println("local = " + dtLocal)
def timestampLocal(dtUTC: DateTime): String = {
// This is a laborious way to convert from UTC to local. There must be a better way.
val instantUTC = dtUTC.getMillis
val localDateTimeZone = DateTimeZone.getDefault
val instantLocal = localDateTimeZone.convertUTCToLocal(instantUTC)
val dtLocal = new DateTime(instantLocal)
dtLocal.toString
}
Run Code Online (Sandbox Code Playgroud)
这是输出:
dtUTC = 2010-10-28T04:00:00.000 + 11:00 local = 2010-10-28T15:00:00.000 + 11:00
我有这个:
def valid_attributes
{ :email => "some_#{rand(9999)}@thing.com" }
end
Run Code Online (Sandbox Code Playgroud)
对于Rspec测试吧?但我想做这样的事情:
def valid_attributes
static user_id = 0
user_id += 1
{ :email => "some_#{user_id}@thing.com" }
end
Run Code Online (Sandbox Code Playgroud)
我不想user_id从任何地方访问,但这种方法,这可能与Ruby有关吗?
我正在使用jQuery,如果这有任何好处; 我希望:
用户选择本地文件系统上的文件
我的javascript获取所述文件的内容,而不是"穿越电线".
我正在检查浏览器类型,并准备为每个浏览器使用完全不同的代码.IE和FF是我目前正在写的两个.
我不使用PHP,只是在表单上直接javascript.
在获取,验证和操作文件的内容之前,我不想要任何获取,发布,提交,ajax或任何其他网络活动(我的脚本将执行所有操作;这个问题仅用于获取文件).
我不一定需要走这条路.我不是特别想要走这条路.普遍接受的"安全"概念让用户选择文件,我的脚本只获取内容.那没关系,但如果我走上这条道路,我就不会抱怨.
我已经google了很多,并没有得到任何简单的解决方案.
我看过Mozilla XPCOM,但文件选择器nsIFilePicker需要权限提升,我只是不想处理.
我尝试过常规使用
<input type="file" onclick="fileCheck(this); return false" . . . />
with
function fileCheck ()
{
var path = obj.files[0].mozFullPath;
}
Run Code Online (Sandbox Code Playgroud)
但即使你可以在Firebug中看到mozFullPath,它也不会出现在Javascript中(表面上是出于安全原因).
有任何想法吗?
我需要构建一个离线Phonegap应用程序.但是,我的所有js函数都需要一个Web服务器才能运行良好.是否可以将本地Web服务器嵌入到phpnegap项目中?
在MSDN文档之后,我们可以使用Local属性直接从上下文获取本地/缓存数据,而无需对数据源的其他请求:
获取一个ObservableCollection,它表示此集合中所有已添加,未更改和已修改实体的本地视图.
(...)
通过使用数据填充集合,此属性可用于数据绑定,例如,使用Load扩展方法,然后通过此属性绑定到本地数据.
问题是,代码不起作用(Local为空):
context.SampleEntities.Select(x => new { x.A, x.B }).Load();
// context.SampleEntities.Local.Count is 0
Run Code Online (Sandbox Code Playgroud)
但在这种情况下,它似乎正常工作:
context.SampleEntities.Load();
// context.SampleEntities.Local.Count is not 0
Run Code Online (Sandbox Code Playgroud)
也许有人可以解释使用Local属性的正确方法是什么?
更重要的是,如何将它与部分加载的实体一起使用,如上面的情况?
我在模拟器中测试我的应用程序.
我正在下载文件并获取它的本地方式,如下所示:
file:///Users/administrator/Library/Developer/CoreSimulator/Devices/4CDF286B-543F-4137-B5E2-C312E19B992F/data/Containers/Data/Application/E5F13797-A6A8-48A1-B3C3-FBC3D7A03151/Documents/4d13e04980d3.mp3
现在我想用AVAudioPlayer播放这个文件,但我总是收到这个错误:
file:///
Error Domain=NSOSStatusErrorDomain Code=2003334207 "(null)"
Run Code Online (Sandbox Code Playgroud)
比赛代码:
var alertSound = NSURL(fileURLWithPath: "file:///Users/administrator/Library/Developer/CoreSimulator/Devices/4CDF286B-543F-4137-B5E2-C312E19B992F/data/Containers/Data/Application/E5F13797-A6A8-48A1-B3C3-FBC3D7A03151/Documents/4d13e04980d3.mp3")
print(alertSound)
var error:NSError?
do {
try audioPlayer = AVAudioPlayer(contentsOfURL: alertSound)
audioPlayer.prepareToPlay()
audioPlayer.play()
} catch {
print(error)
}
Run Code Online (Sandbox Code Playgroud)
我该怎么玩呢?
我正在尝试在预定时间发送本地通知.但是通知没有出现在屏幕上,但是当我向下滑动时它会显示在通知中心.
这就是我想要实现的目标.这就是我所得到的.

这段代码来自我的AppDelegate的didFinishLaunchingWithOptions().
// Setup local push notifications
application.registerUserNotificationSettings(UIUserNotificationSettings(forTypes: [UIUserNotificationType.Alert, UIUserNotificationType.Badge, UIUserNotificationType.Sound], categories: nil))
scheduleNotifications()
Run Code Online (Sandbox Code Playgroud)
这是scheduleNotifications()的代码
func scheduleNotifications() {
// create a corresponding local notification
let notification = UILocalNotification()
// Get today's date, time and year
let calendar = NSCalendar.currentCalendar()
let components = calendar.components([NSCalendarUnit.Day, NSCalendarUnit.Month, NSCalendarUnit.Year], fromDate: NSDate())
// Sets the fire time to 2pm/1400 hours to anticipate user for lunch time
components.hour = 19
components.minute = 13
components.second = 00
notification.fireDate = components.date // Sets …Run Code Online (Sandbox Code Playgroud) 我正在努力配置Kafka的JMX只能被曝光localhost.默认情况下,当我启动Kafka时,它会暴露三个端口,而其中两个端口会自动绑定0.0.0.0,这意味着每个人都可以访问它们.
我设法将代理本身绑定到127.0.0.1(因为我只在本地需要它),但JMX端口真的让我很头疼.
我必须遵循定义的env vars:
export JMX_PORT=${JMX_PORT:-9999}
export KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.rmi.port=$JMX_PORT -Dcom.sun.management.jmxremote.port=$JMX_PORT -Dcom.sun.management.jmxremote=true -Djava.rmi.server.hostname=127.0.0.1 -Djava.net.preferIPv4Stack=true"
Run Code Online (Sandbox Code Playgroud)
如果我现在查看绑定端口/ ips,我看到:
$ netstat -tulpn | grep 9864
tcp 0 0 0.0.0.0:9999 0.0.0.0:* LISTEN 9864/java
tcp 0 0 0.0.0.0:44895 0.0.0.0:* LISTEN 9864/java
tcp 0 0 127.0.0.1:9092 0.0.0.0:* LISTEN 9864/java
Run Code Online (Sandbox Code Playgroud)
这意味着JMX会监听0.0.0.0,甚至还有另一个44895我不了解其目的的开放端口.
我想要实现的是Kafka端口只能打开127.0.0.1.任何人都可以暗示一下吗?提前致谢!
编辑:
我通过添加获得了部分成功-Dcom.sun.management.jmxremote.host=localhost,但仍有一个开放端口暴露在0.0.0.0:
$ netstat -tulpn | grep 12789
tcp 0 0 127.0.0.1:9999 0.0.0.0:* LISTEN 12789/java
tcp 0 0 0.0.0.0:43513 …Run Code Online (Sandbox Code Playgroud)