<resources>
<drawable name="red">#7f00</drawable>
....
<color name="solid_red">#f00</color>
.....
</resources>
Run Code Online (Sandbox Code Playgroud)
这是android示例目录中的colors.xml的一部分.
现在我的问题是,在<drawable>标签和<color>标签中定义颜色有什么区别?
我正在尝试创建一个简单的类来读取csv文件并将内容存储在一个
ArrayList<ArrayList<T>>.
Run Code Online (Sandbox Code Playgroud)
我正在创建一个泛型类CsvReader,以便我可以处理不同类型的数据:int,double,String.如果我有一个双打的csv文件,我想象我会像这样使用我的班级:
//possible method 1
CsvReader<Double> reader = new CsvReader<Double>();
ArrayList<ArrayList<Double>> contents = reader.getContents();
//possible method 2
CsvReader reader = new CsvReader(Double.class);
ArrayList<ArrayList<Double>> contents = reader.getContents();
Run Code Online (Sandbox Code Playgroud)
但是方法1不起作用,因为类型擦除会阻止您编写类似的代码
rowArrayList.add(new T(columnStringValue));
Run Code Online (Sandbox Code Playgroud)
但我甚至无法在Double.class解决方案中进行传递.问题是,真正发生的是我需要在具有以下属性的类型上"参数化"(在一般意义上,不是技术java泛型意义上):它有一个接受单个String参数的ctor .也就是说,要在Double csv文件上创建行ArrayLists,我需要写:
StringTokenizer st = new StringTokenizer(line,",");
ArrayList<Double> curRow = new ArrayList<Double>();
while (st.hasMoreTokens()) {
curRow.add(new Double(st.nextToken());
}
Run Code Online (Sandbox Code Playgroud)
传入Double.class后,我可以使用它的String ctor
Constructor ctor = c.getConstructor(new Class[] {String.class});
Run Code Online (Sandbox Code Playgroud)
但这有两个问题.最重要的是,这是一个通用构造函数,它将返回一个Object类型,然后我无法将其转换为Double.其次,我将缺少"类型"检查,因为我要求我传入类中有一个String arg构造函数.
我的问题是:我如何正确实现这个通用的CsvReader?
谢谢,约拿
我必须尽可能快速,实时地通过UDP发送一系列视频帧,当我掌握了基础知识时,我遇到了各种各样的困难.我的一些目标:
数据通常通过拨号发送(因此UDP而不是TCP),但也需要支持快速以太网.
偶尔丢帧(因此UDP而不是TCP)是可以的.
需要低延迟.远程接收的帧应该是最近发送的帧(在缓冲区中等待的帧数不超过几帧).
我需要能够检测有效带宽,以便我可以或多或少地压缩帧以保持帧速率.
我已成功实现了大部分内容:
我将帧数据分解为一个或多个大约500字节的数据报,每个数据报都有一个序列号和其他信息.接收器重新组装整个帧并检测是否缺少任何数据报.
如果接收器检测到超过一定百分比的丢帧(例如,过去10帧中的50%),我向发送方发送TCP消息以减慢50%.发送者比每个后续帧慢慢增加5%的速度.
使用System.Net.Sockets.UdpClient发送和接收数据.
我有一个单独的TCP通道用于控制消息回发送者.
我现在面临的主要困难是检测有效带宽并处理延迟,特别是通过拨号(最大~4,000字节/秒).例如,如果我尝试使用TcpClient.Send()发送100,000字节/秒,则它们似乎到达(没有丢弃的数据报),但是在最后一个数据报到达时具有大的延迟.我认为TcpClient.Send()函数是阻塞的,直到缓冲区能够发送,这会混淆我当前的算法.
任何人都可以指出我的任何信息来源如何:
通过UDP检测实际带宽.
一种更好的动态调整带宽以适应可用管道的算法.
以所需带宽平滑地发送数据.
一种检测并将延迟降至最低的方法.
我在上周一直在转动轮子,每次解决一个问题时,另一个问题似乎是头部.
1)
1 - 只处理您实际可以做的事情,
2 - 您无法对绝大多数例外做任何事情
a)我假设“By not handling an exception”文本建议我们应该让异常冒泡到堆栈中,运行时将中止我们的应用程序?!
b)但是为什么让运行时中止异常优先于捕获异常,记录它然后通知用户失败?只有两者之间的区别在于,在后一种情况下,应用程序不会中止
例如,如果数据库出现故障,为什么整个程序崩溃(由于没有处理异常),如果我们可以捕获异常,记录它并通知用户失败,那样我们就可以保持程序正常运行
2)如果您知道某些代码块可能引发的异常无法处理,您是否应该在try-finally块中包含此代码,或者最好将其保留在任何try-finally块之外?
谢谢
有没有办法获得wc在bash中返回的整数?
基本上我想在文件名之后将行号和字数写入屏幕.
output: filename linecount wordcount
这是我到目前为止:
files=`ls`
for f in $files;
do
if [ ! -d $f ] #only print out information about files !directories
then
# some way of getting the wc integers into shell variables and then printing them
echo "$f $lines $ words"
fi
done
我正在使用python来使用stackoverflow API.我运行以下命令:
f = urllib.request.urlopen('http://api.stackoverflow.com/1.0/stats')
d = f.read()
Run Code Online (Sandbox Code Playgroud)
d的类型是'bytes'类,如果我打印它看起来像:
b'\x1f\x8b\x08\x00\x00\x00 .... etc
Run Code Online (Sandbox Code Playgroud)
我试过,d=f.read().decode('utf-8')因为这是标题中指示的字符集,但我收到一条
'utf8' codec can't decode byte 0x8b in position 1"错误消息
如何将我从urllib.request调用收到的字节对象转换为字符串?
当我尝试将我的Rails 3应用程序部署到Heroku并且在gems文件中定义了sqlite3时,我遇到了Heroku部署问题中描述的相同场景.
/usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.0/lib/bundler/runtime.rb:64:in`requirement':没有要加载的文件--sqlite3(LoadError)
任何线索为什么会这样?在ruby-forum中定义的解决方案有效,我只是想知道为什么.
我有一个脚本文件,例如test.sql.我想用sqlcmd模式中的另一个脚本调用caller.sql来调用它:r test.sql.这工作正常,但我想在test.sql中使用脚本变量.当我从caller.sql调用test.sql时,我可以设置脚本变量,一切都很好.但是,我想使用脚本值的默认值,以便如果调用者没有设置变量,或者我直接运行test.sql(而不是从caller.sql),那么脚本变量默认为设置值.
我尝试过诸如此类的东西
begin try
select '$(grip)'
select 'grip value was found'
end try
begin catch
select 'grip value was missing'
end catch
Run Code Online (Sandbox Code Playgroud)
但我得到以下消息:发生了致命的脚本错误.未定义可变夹点.
我在test.sql中需要什么才能处理调用者传递的"grip"?我正在使用MS SQL 2005
我有以下代码:
#include <iostream>
#include <string>
#include <unistd.h>
using namespace std;
int main()
{
// Variables
string sDirectory;
// Ask the user for a directory to move into
cout << "Please enter a directory..." << endl;
cin >> sDirectory;
cin.get();
// Navigate to the directory specified by the user
int chdir(sDirectory);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
此代码的目的非常简单:将用户指定的目录设置为当前目录.我的计划是对其中包含的文件进行操作.但是,当我尝试编译此代码时,我收到以下错误
error: cannot convert ‘std::string’ to ‘int’ in initialization
Run Code Online (Sandbox Code Playgroud)
参考线读数int chdir(sDirectory).我刚刚开始编程,现在才开始寻找有关平台特定功能的问题,所以对此问题的任何帮助都会非常感激.
在我的python应用程序中,我尝试打开https网址,但我得到:
File "C:\Python26\lib\urllib.py", line 215, in open_unknown
raise IOError, ('url error', 'unknown url type', type)
IOError: [Errno url error] unknown url type: 'https'
Run Code Online (Sandbox Code Playgroud)
我的代码:
import urllib
def generate_embedded_doc(doc_id):
url = "https://docs.google.com/document/ub?id=" + doc_id + "&embedded=true"
src = urllib.urlopen(url).read()
...
return src
Run Code Online (Sandbox Code Playgroud)