我想将一些数据存储到Android设备上的文件(而不是数据库)中.目前我正在使用Context.getFileDir()作为父目录.但是,当您更新应用程序时,该目录将被删除.是否有一个我可以在Context中使用的目录,当用户更新应用程序时,该目录不会被篡改?是否必须是SD卡,因为并非所有手机都能提供SD卡?
我已经注意到一段时间了,至少在我使用的一些基于Unix的系统上,我ls [A-Z]*已经给了我预期的结果ls [A-Za-z]*,让我无法轻易得到一个开头的那个该死的文件列表大写字母.我刚刚遇到了同样的事情grep,我无法让它停止匹配小写字母[A-Z]直到我最终用来grep -P获得Perl正则表达式.
所以我有一些相关的问题:
ls和grep案例?(例如,尝试grep --no-ignore-case没有结果. grep -P由于其实验性功能状态,这不是一个非常好的解决方法.)我正在尝试使用Hibernate组合一个复杂的查询.我一直倾向于Criteria,但我开始怀疑它不可能,所以任何建议都会有所帮助.
我有一个如下的实体结构:
public class Attribute {
private Integer id;
private String name;
private Set<Value> values;
}
public class Instance {
private Integer id;
private int instanceRef;
private Set<Value> values;
}
public class Value {
private Integer id;
private Attribute attribute;
private String localAttributeName;
private Instance instance;
private String value;
}
Run Code Online (Sandbox Code Playgroud)
这些实体与您期望的相关:
value.attribute_id --> attribute.id
value.instance_id --> instance.id
Run Code Online (Sandbox Code Playgroud)
现在,我希望能够获取一组属性/值对(字符串)并查找包含所有这些属性/值对的所有实例.在Value中,attribute和localAttributeName中只有一个是非null,因此属性名称可以匹配localAttributeName或attribute.name.最后一次使事情复杂化,Value上的唯一索引是(实例,属性,值)或(实例,localAttributeName,value) - 也就是说,在实例中,任何给定的Attribute都可能有多个值.
这是我到目前为止:
public List<Instance> getMatchingInstances(Map<String, String> attrValues) {
Criteria crit = session.createCriteria(Instance.class, "i");
for(Map.Entry<String, String> entry : attrValues) { …Run Code Online (Sandbox Code Playgroud) 如果有人已经回答道歉 - 如果有人能指出我已经回答的问题,那就太好了......
很简单,我希望能够弹出一个可以处理给定类型文件的应用程序列表 - 例如,如果我有一个音乐文件(mp3,ogg,等等),我希望能够显示可以处理文件并允许用户选择文件的所有已加载媒体应用程序的列表.
我一直在努力创建这样做的意图如下:
Intent myIntent = new Intent();
myIntent.setAction(Intent.ACTION_VIEW);
myIntent.addCategory("android.intent.category.LAUNCHER");
myIntent.setType("mp3");
startActivity(myIntent);
Run Code Online (Sandbox Code Playgroud)
但我显然错了,因为它每次都会崩溃.我应该使用ACTION_PICK还是ACTION_CHOOSER而不是ACTION_VIEW?
更重要的是,是否可以通过Intent.type以外的其他方式轻松定义所有媒体播放器?我认为类型应该是一个合适的MIME类型,小写,但我不知道在这个实例中使用什么...
请温柔:)
我需要将我的用户重定向到AuthError.aspx页面("您无权访问此页面"),如果他们经过身份验证但尝试访问他们无法访问的页面(因为考试的角色) .如果我设置了web.config,那么:
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
Run Code Online (Sandbox Code Playgroud)
这是系统的错误行为,因为用户已经过身份验证,无需将他或她重定向到此页面.但是,如果我在这里写AuthError.aspx而不是Login.aspx我怎么能将尚未验证的用户重定向到登录页面?
我无法理解MySQL的DECIMAL.我需要行能够包含00.0001到99.9999之间的任何数字.我将如何构建它以便像这样工作?
我正在尝试使用PrincipalContext通过Active Directory服务找出域组件。
我使用很少的参数创建了PrincipalContext:
PrincipalContext theContext = new PrincipalContext(ContextType.Domain);
Run Code Online (Sandbox Code Playgroud)
theContext正确返回。我可以查询很多东西并获得预期的结果。但是我真正想做的是:
Console.WriteLine("Domain Component: " + theContext.Container);
Run Code Online (Sandbox Code Playgroud)
根据MSDN,这仅“获取在构造函数中的容器参数中指定的值”。既然我什么都没传递,我什么也得不到。
但是理论上的容器具有域组件,您可能需要使用或创建的任何专有名称都需要这些域组件。我特别希望在一个已知的组织单位中创建一个新用户。但是,由于我不知道域组件,因此无法创建专有名称。我还没有看到对相对路径的任何支持。
我认为最好的选择是搜索任何用户,然后获取其专有名称并删去“ dc”部分。
var searchUser = new UserPrincipal(theContext);
var searcher = new PrincipalSearcher(searchUser);
Principal aUser = searcher.FindOne();
if (aUser != null)
{
string dn = aUser.DistinguishedName;
Console.WriteLine(dn.Substring(dn.IndexOf("dc=", StringComparison.InvariantCultureIgnoreCase)));
}
Run Code Online (Sandbox Code Playgroud)
感觉像是一个糟糕的骇客。太多可能会出错。我希望有更好的东西。有人有主意吗?
我最近决定将我的Web应用程序从NHibernate 2.1升级到3.0,这是最新版本的NH.我还决定从.NET 2.0升级到3.5,以便与Mono(webapp仅在Linux中运行)实现最佳兼容性,因为它已经足够成熟了.
我想与LINQ和NHibernate一起玩,因为我也看到NHibernate.Linq命名空间包含在发行版中.
但是,当我尝试使用ISession实例编写LINQ时,我没有得到该Linq<T>方法.
我读了许多旧博客帖子,为了使用LINQ to NH,你必须使用NHContrib软件包.
我还需要下载NHContrib吗?NH版本3.0比NHContrib的LINQ to NH更新,我在发布版本中看到了Linq命名空间
是因为Visual Studio 2010升级了2.0-> 3.5框架升级?我仔细检查了目标框架IS 3.5.
遗憾的是,我找不到有关NH 3.0的全面文档,除了完整的类文档,这对于NH开发人员而言比通用开发更有用
谢谢.
$ py manage.py migrate turkey
Running migrations for turkey:
- Migrating forwards to 0001_initial.
> turkey:0001_initial
! Error found during real run of migration! Aborting.
! Since you have a database that does not support running
! schema-altering statements in transactions, we have had
! to leave it in an interim state between migrations.
! You *might* be able to recover with: = DROP TABLE `turkey_demorecs` CASCADE; []
! The South developers regret this has happened, and would
! like …Run Code Online (Sandbox Code Playgroud) (在StackOverflow上已经提到了类似的问题,但不是这个.最近的可能是" javascript如何将unicode字符串转换为ascii ",其中已经有"这必须是一个dup [licate]"这句话.我我已经阅读了一些类似的帖子,但他们没有回答我的具体问题.我看过非常好的W3Schools网站,并且也用Google搜索过,但也没有找到答案.所以这里的任何提示都会非常多赞赏.)
我有一个字节数组传递给一段JavaScript.在JavaScript中,数据以字符串形式到达.我不知道传输机制,因为它来自第三方应用程序.我甚至不知道字符串是"宽"还是"窄".
在我的JavaScript中,我有一些代码b = str.charCodeAt(pos);.
我的问题是像字符0x2020 = 8224这样的字节值如0x86 = 134.这似乎是因为我的原始字节被解释为Latin-1(可能)'匕首'字符,然后被转换为等效的Unicode代码点.(问题可能是也可能不是JavaScript的'错误'.)其他值也会出现类似的问题,尽管范围0x00..0x7F和0xA0..0xFF看起来很好,但大多数值来自0x80..0x9F会受到影响,每种情况下,该值似乎是原始Latin-1的Unicode.
另一个观察结果是,如果以字节为单位测量长度,则字符串的长度是我对窄字符串的期望.(另一方面,如果length返回抽象字符中的值,这不会告诉我任何事情.)
那么,在JavaScript中,有没有办法获取字符串中的"原始"字节,或者直接获取Latin-1或ASCII字符代码,或者在字符编码之间进行转换,或者定义默认编码?
我可以编写自己的映射,但我不想.我希望这就是我最终会做的事情,但这种感觉会让人觉得自己已经陷入困境了.
我也在研究是否可以在调用应用程序中调整任何内容(因为它可能将数据作为一个宽字符串传递,尽管我对此表示怀疑).
无论哪种方式,我都会对是否有简单的JavaScript解决方案感兴趣,或者了解为什么没有.
(如果传入的数据是字符数据,那么自动处理Unicode将是很好的.但事实并非如此,它只是一个二进制数据流.)
谢谢.