我正在编写一个跨平台的应用程序,它创建临时文件并将这些文件复制到另一个位置,每个人都需要这些文件.(默认情况下,只有所有者对临时文件具有读访问权.)我尝试使用POSIX文件权限,如下所示:
FileAttribute<Set<PosixFilePermission>> attrs =
PosixFilePermissions.asFileAttribute(PosixFilePermissions.fromString("rw-r--r--"));
Path temp = Files.createTempFile(null, ".tmp", attrs);
Run Code Online (Sandbox Code Playgroud)
但这会导致非POSIX平台出现异常:
java.lang.UnsupportedOperationException: 'posix:permissions' not supported as initial attribute
Run Code Online (Sandbox Code Playgroud)
我想添加一个简单的检查,以便我可以在必要时使用文件权限,而不会破坏与其他平台的兼容性.
我生成供用户下载一个文件,我想插入正确的换行符(个),他们的平台(\n,\r,或\r\n).
我知道以下解决方案,但没有一个完全解决我的问题:
有没有办法在更改后将已访问和未访问的链接颜色重置为浏览器默认值?
在我的具体情况下,我有一个主要样式文件,其中包含:
a:link { color: black; }
a:visited { color: black; }
Run Code Online (Sandbox Code Playgroud)
我想要一些使用默认颜色呈现的特定链接。
编辑:这是一个可以玩的jsFiddle 。我想要一个default类的样式,使其与浏览器默认值相匹配。
Ruby有一个内置loop命令,可以永久地执行它后面的块(或直到被停止break).但是,当它与功能相似时进行比较时while true,速度明显变慢:
require "benchmark/ips"
NUMBER = 100_000_000
def fast
index = 0
while true
break if index > NUMBER
index += 1
end
end
def slow
index = 0
loop do
break if index > NUMBER
index += 1
end
end
Benchmark.ips do |x|
x.report("While Loop") { fast }
x.report("Kernel loop") { slow }
x.compare!
end
Run Code Online (Sandbox Code Playgroud)
在Ruby 2.4.1(p111(2017-03-22修订版58053)[x64-mingw32])下,差异是惊人的:
Warming up --------------------------------------
While Loop 1.000 i/100ms
Kernel loop 1.000 i/100ms
Calculating -------------------------------------
While Loop 0.630 …Run Code Online (Sandbox Code Playgroud) css ×1
java ×1
javascript ×1
newline ×1
nio ×1
nio2 ×1
performance ×1
posix ×1
ruby ×1
while-loop ×1