我正在用Groovy编写代码
我目前正在尝试将我拥有的字符串转换为日期,而不必做任何太繁琐的事情.
String theDate = "28/09/2010 16:02:43";
def newdate = new Date().parse("d/M/yyyy H:m:s", theDate)
Run Code Online (Sandbox Code Playgroud)
输出:
Tue Aug 10 16:02:43 PST 2010
Run Code Online (Sandbox Code Playgroud)
上面的代码工作正常,但是当我的字符串更改为:
String testDate = "Tue Aug 10 16:02:43 PST 2010"
def newerdate = new Date().parse("d/M/yyyy H:m:s", testDate)
Run Code Online (Sandbox Code Playgroud)
它告诉我"周二没有这样的价值".我试图在日期的解析中抛出'E',但它说日期无法解析.
有人可以解释我应该如何解析第二个例子?
我创建了一个小函数,只是简单地将文本写入文件,但是我在将每条信息写入新行时遇到问题.有人能解释为什么它把所有东西放在同一条线上吗?
这是我的功能:
public void writeToFile(def directory, def fileName, def extension, def infoList) {
File file = new File("$directory/$fileName$extension")
infoList.each {
file << ("${it}\n")
}
}
Run Code Online (Sandbox Code Playgroud)
我正在测试它的简单代码是这样的:
def directory = 'C:/'
def folderName = 'testFolder'
def c
def txtFileInfo = []
String a = "Today is a new day"
String b = "Tomorrow is the future"
String d = "Yesterday is the past"
txtFileInfo << a
txtFileInfo << b
txtFileInfo << d
c = createFolder(directory, folderName) //this simply creates a folder …Run Code Online (Sandbox Code Playgroud) 我对Android很新,并且一直在玩Canvas.我试图画一个箭头,但我只是在绘制轴时没有运气,箭头都没有工作.
我搜索了一下,发现了一个Java示例,但Android没有GeneralPath或者AffineTransform.
现在我的代码如下所示(箭头看起来像箭头):
public class DrawableView extends View {
Context mContext;
private int centerX;
private int centerY;
private int radius;
private double arrLength;
private double arrHeading;
private int margin = 10;
public DrawableView(Context context) {
super(context);
mContext = context;
}
@Override
protected void onDraw(Canvas canvas) {
//Paint Background
Paint background = new Paint();
background.setColor(getResources().getColor(R.color.background);
canvas.drawRect(0, 0, getWidth(), getHeight(), background);
//Set vars for Arrow Paint
Paint paint = new Paint();
paint.setColor(getResources().getColor(R.color.arrowColor);
centerX = getWidth() / 2;
centerY …Run Code Online (Sandbox Code Playgroud) 一段时间后,我问了一个问题,看看我是否能在路径中找到一对特定点; 但是,这次我想知道是否有办法知道路径中的所有点?(我找不到这样做的方法,这很不幸,因为Java提供了一种方法来做到这一点,而不是Android?)
我问这个的原因是因为我有多个几何图形,我想比较这些点以查看它们相交的位置.
我感谢任何有用的回应
我想知道从这个RUL下载图像的正确方法是:http://www.hidemyass.com/proxy-list/img/port/7018246/1
我尝试下载它的方式,将文件保留为未知格式.我测试的当前代码片段是:
public void download(def address) {
def file = new FileOutputStream(address.tokenize("/")[-1])
def out = new BufferedOutputStream(file)
out << new URL(address).openStream()
out.close()
}
Run Code Online (Sandbox Code Playgroud) 我对x86汇编中的乘法和除法运算如何工作感到困惑.例如,自从处理8位以来,下面的代码似乎并不太难.
8位乘法:
; User Input:
; [num1], 20
; [num2] , 15
mov ax, [num1] ; moves the 8 bits into AL
mov bx, [num2] ; moves the 8 bits into BL
mul bl ; product stored in AX
print ax
Run Code Online (Sandbox Code Playgroud)
但是当你想要乘以两个16位数时会发生什么?如何将两个16位数字乘以与8位数字相同的方式?
我很困惑这些值将存储在哪些寄存器中.它们是存储在AL和AH中还是只是将16位数存储在AX中.显示我的意思:
; User Input:
; [num1], 20
; [num2], 15
mov eax, [num1] ; Does this store the 16-bit number in AL and AH or just in AX
mov ebx, [num2] ; Does this store the 16-bit number …Run Code Online (Sandbox Code Playgroud) 他们是否有理由决定不在Android中添加contains方法(针对Path)?
我想知道我在Path中有什么观点,并希望它比在这里看到的更容易:
我是否更好地创建一个ArrayList并将整数添加到数组中?(我只在控制声明中检查一次点数)即.if(myPath.contains(x,y)
到目前为止,我的选择是:
我只是在寻找最有效的方法
我一直在玩Android并尝试移植Java应用程序.以下是关于我遇到的问题的一些问题,并希望得到一些指导.
这是一个相当大的问题(多个问题).但是,我不是盲目地问他们,因为我已经研究了我能做些什么,并试图让我理解使用它.我花时间提出问题,希望他们对我想要实现的目标有一半的了解.
我将提供一半的代表作为赏金,因为我希望得到彻底的答案和帮助,希望它足以吸引一些人帮助.
提前,谢谢你的时间和帮助!(期待阅读回复).
TextLayout && Font && Graphics2D
有问题的是以下类和方法:
TextLayoutTextLayout.getAdvance()TextLayout.getAscent()TextLayout.draw()Graphics2D.getFontRenderContext()我不太确定TextLayoutAndroid中的等价物.我曾经读过有些人会TextView使用它,但我不确定是否会这样做
为以下工作.我会提供一些我想做的事情的来源,或许可以帮助我.
Java来源:
private Font myStringFont = new Font("Helvetica", Font.BOLD, 12);
private String myString = "My Test String";
private int midX = getWidth() / 2;
private int midY = getHeight() / 2;
Graphics2D g2 = new Graphics2d();
TextLayout layout = new TextLayout(myString, font, g2.getFontRenderContext());
g2.drawString(myString, midX - ((int)layout.getAdvance() /2), midY);
Run Code Online (Sandbox Code Playgroud)
Android复制尝试:
Canvas canvas;
Paint paint;
private String myString = "My Test …Run Code Online (Sandbox Code Playgroud) 我的视图中有一些方法可以修改调用时绘制的一些形状.在Java中,为了确保组件更新,我会打电话repaint().有什么东西能确保我的观点正确更新吗?
我读的地方,调用invalidate()的onDraw()方法将让事情最新的,所以我不会需要有像repaint()在我的方法是修改形状的绘制.
这是正确的,还是我还有别的办法?
编辑
要添加一个示例,我在视图中调用的方法是:
public void setLineThickness(int thickness) {
aLineThickness = thickness;
if(aLineThicness > 1)
//repaint(); - Okay in Java but not in Android
}
Run Code Online (Sandbox Code Playgroud) 我想知道Grails应用程序中是否有资源文件的指定位置?我有一个csv文件被加载到一个地图(没什么大不了),但不知道把它放在项目的哪个位置.
所以我的问题是,项目中是否有专门的位置来放置这个文件?(如果是,在哪里?)或者将它放在项目之外是否更好?