- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将两个 CGPoints(在一个数组中)保存到 Documents 目录中的一个文本文件中。当我阅读文件时,这是我得到的:
NSPoint: {66.5, 87}, NSPoint: {198.5, 314.5}
如何得到这样的输出:
66.5 87
198.5 314.5
这是我的代码:
//save the coordinates of two points into a text file in the Documents directory
- (void)savePoints
{
//get Document directory's path
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"POINTS.txt"];
//create an points array
NSMutableArray *points = [[NSMutableArray alloc] init];
[points addObject:[NSValue valueWithBytes:&fromPoint objCType:@encode(CGPoint)]]; //insert object at the end of the array
[points addObject:[NSValue valueWithBytes:&toPoint objCType:@encode(CGPoint)]];
//write points array to file
BOOL result = [NSKeyedArchiver archiveRootObject:points toFile:fullPath];
NSLog(@"Archival result: %d", result);
}
//read the file
-(void)getPoints
{
//get Document directory's path
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"POINTS.txt"];
//read points array from file
NSMutableArray *points = [NSKeyedUnarchiver unarchiveObjectWithFile:path];
NSString *str = [points componentsJoinedByString:@","];
NSLog(@"%@", str);
}
最佳答案
您有一行代码获取两点数组,然后将其转换为字符串:
NSString *str = [points componentsJoinedByString:@","];
这给了你:
NSPoint: {66.5, 87},NSPoint: {198.5, 314.5}
您恰好在 getPoints
方法中执行此操作,但如果您也在 savePoints
方法中执行此操作,您将获得相同的结果。您的问题与保存到文件或从文件中检索无关。这只是您希望如何从 points
数组中提取 CGPoint
值的问题。
所以,如果你想收回你的两点(我认为这是真正的意图),你可以这样做:
CGPoint fromPoint = [[points objectAtIndex:0] CGPointValue];
CGPoint toPoint = [[points objectAtIndex:1] CGPointValue];
或者您可以使用最新版本的编译器:
CGPoint fromPoint = [points[0] CGPointValue];
CGPoint toPoint = [points[1] CGPointValue];
或者你可以这样做:
for (NSValue *value in points)
{
CGPoint point = [value CGPointValue];
NSLog(@"point = %.1f, %.1f", point.x, point.y);
}
然后你可以用你的两点为所欲为。
关于iphone - 从文本文件中读取 NSPoint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16278434/
我有 4 个 NSPoints,它们是矩形的 4 个角 现在我有了另一个 NSPoint,这是鼠标下降的位置 (mousedown_nsp)。 找到与 mousedown_nsp 相关的最近的 NSP
在 macOS 编程中,我们知道 Quartz 使用原点 (0, 0) 位于主显示屏左上角的坐标空间。增加 y 会下降。 Cocoa 使用一个坐标空间,其中原点 (0, 0) 位于主显示屏的左下角,并
我将两个 CGPoints(在一个数组中)保存到 Documents 目录中的一个文本文件中。当我阅读文件时,这是我得到的: NSPoint: {66.5, 87}, NSPoint: {198.5,
让我从代码开始。 - (NSPoint*) pointFromPoint:(NSPoint*)point withDistance:(float)distance towardAngle:(float
我正在 cocoa 应用程序中实现拖放,并且使用 NSDraggingSource 协议(protocol)中的以下方法: - (void)draggedImage:(NSImage *)dragge
如何让 NSPoint 中的整数值显示为整数而不是小数? let temp:NSPoint = NSMakePoint(5,7) print(temp.x) . // displays 5.0 我只想
我正在覆盖 draggingUpdated:在WebView子类。这样我就能得到 NSPoint当前拖动目的地是[(id)sender draggingLocation] 我想得到这个 NSPoint
NSPoint 是 Cocoa 中用来表示平面上的点的 C 结构体。 如何以 Objective-C 风格对 NSPoint 进行平移、旋转和其他几何操作? 到目前为止,我正在使用 C 函数来进行这些
Apple 基础套件中是否提供了适当的结构来表示离散坐标系?我知道我可以只使用 NSPoint 的整体组件,并按照惯例保持它的离散性,甚至可以定义我自己的组件。 但是,如果已经有一个输入正确,我会更喜
关闭。这个问题是not reproducible or was caused by typos 。目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
我正在尝试通过 NotificationCenter 传递 NSPoint。我已经使用定义的三种方法构建了一个 NSView 子类: override func mouseDragged(wi
我在 NSPoint 中得到一个点: NSPoint: {273,534} 我想将 273 和 534 传递给 CGrectMake。 例如: viewTwo.frame=CGRectMake(273
CGPoint、CGSize、CGRect的单位是什么; NSSize、NSPoint 和 NSRect? 最佳答案 CGPoint等的单位是点。一个点在非视网膜屏幕上代表一个像素,在视网膜屏幕上代表
所以我试图获取与 NSTextView 中特定字符的位置相对应的 NSPoint 或 NSRect。这就是我到目前为止所拥有的(效果不是很好,结果似乎有点不可预测。 NSRange theTextRa
我创建了一个包含 NSRect 值的可变数组。我想检查我创建的 NSPoint 是否在这个矩形内。在 cocoa 中做到这一点的最佳方法是什么。 最佳答案 来自Foundation Functions
我的应用程序有一个显示事件时间线的自定义 View 。该 View 包装在 NSScrollView 中以支持时间轴的水平滚动。使用通知,我实现了一种机制,该机制应该显示另一个自定义 View ,当用
我有一个 NSTextView 并且需要插入点的坐标以在用户交互时在那里显示 View 。 有一个函数可以从 NSPoint 中获取字符索引。我想知道是否有任何简单的方法可以做相反的事情? 感谢您的帮
本文以实例详细描述了Objective-C中常用的结构体NSRange,NSPoint,NSSize(CGSize),NSRect的定义及用法,具体如下所示: 1、NSRange: NSRang
我知道这里已经以几种形式提出了这个问题,但不幸的是,建议的解决方案都不适合我。 我正在实现多点触控 我的 osx 应用程序的功能。 我的问题: 我需要解析屏幕,由屏幕坐标中的 NSPoint 描述,到
因此,我将一个 View 传递给一个方法,并且我想从该 View 中包含的 CGRect 中查找某些值的属性。 - (void)blahblah:(someView*)view int origi
我是一名优秀的程序员,十分优秀!