2015-12-09 09:21:08 IOS_dashen 阅读数 819
  • iOS/Swift/OC/Objective-C/Xcode/0基础/入门

    这是一门快速入门iOS开发的课程,目的是让大家快速学会,iOS开发环境搭建,和iOS一些基础知识,最后完成一个小项目。 项目信息 提供完整的Git提交历史,和每节视频一一对应,目前有41次提交,355行注释,271行代码(不包含可视化布局文件,纯Swift和Objective-C代码)。

    3870 人正在学习 去看看 任苹蜻

从Xcode6开始,新建项目没有自带的 .pch文件了,为了一些琐碎的头文件引用,加快了编译速度。Xcode中手动添加 .pch文件的步骤如下:

第一步:在Supporting Files文件下创建 .pch文件,文件命名一般以“工程名称 - Prefix”的形式

1> New File... -> iOS/Other/PCH File/Next


2>填写文件名称后 Create



第二步:配置Prefix Header

1>选中工程->TARGETS->Build Settings->Apple LLVM 7.0 - Language - >Prefix Header


2>$(SRCROOT)/pchFile.pch


注意:有时候可能会不成功,可能会出现如下图所示的错误

'/User/apple/Desktop/XXXX/XXXX-Prefix.pch'file not found


这时候需要插入一层路径,在输入的$(SRCROOT)/PCHDemo-Prefix.pch插入工程的名称 ,如果我此时的工程名称是 PCHDemo,那么要解决这个Bug就要重新输入:$(SRCROOT)/PCHDemo/PCHDemo-Prefix.pch

你也可以查看路径:选中你的.pch/Show in Finder/显示简介查看路径




2013-11-14 20:26:18 SwingPyzf 阅读数 12171
  • iOS/Swift/OC/Objective-C/Xcode/0基础/入门

    这是一门快速入门iOS开发的课程,目的是让大家快速学会,iOS开发环境搭建,和iOS一些基础知识,最后完成一个小项目。 项目信息 提供完整的Git提交历史,和每节视频一一对应,目前有41次提交,355行注释,271行代码(不包含可视化布局文件,纯Swift和Objective-C代码)。

    3870 人正在学习 去看看 任苹蜻

Objective-C使用NSFileHandle类对文件进行基本操作,IOS文件操作


NSFileHandle类中得方法可以对文件进行基本的读写,偏移量的操作。
NSFileHandle基本步骤:
1、打开文件,获取一个NSFileHandle对象。
2、对打开NSFileHandle的文件对象行I/O操作
3、关闭文件对象


NSFileHandle常用方法:

+(NSFileHandle*)fileHandleForReadingAtPath:path 打开一个文件用于读入

+(NSFileHandle*)fileHandleForWritingAtPath:path 打开一个文件用于写入

+(NSFileHandle*)fileHandleForUpdatingAtPath:path 打开一个文件用于读写

-(NSData*)availableData 从设备或者通道返回可用数据

-(NSData*)readDataToEndOfFile 读取其余的数据知道文件的末尾(最多UINT_MAX字节)

-(NSData*)readDataOfLength:(NSUInteger)bytes 从文件中读取指定字节的内容

-(void)writeData:data  将data写入文件

-(unsigned long long)offsetInFile 获取当前偏移量

-(void)seekToFileOffset:offset  设置偏移量

-(unsigned long long)seekToEndOfFile 将偏移量定位到文件的末尾

-(void)truncateFileAtOffset:offset 讲文件的长度设置为offset字节

-(void)closeFile 关闭文件


方法fileHandleForWritingAtPath和fileHandleForUpdatingAtPath所指定的文件必须是已经存在的,否则返回nil,另外对于这两个方法中文件的偏移量都是为文件的开始。


方法readDataToEndOfFile每次从文件中读取最多UNIT_MAX字节的数据,这个量定义在
<limits.h>中。


在UNIX系统下编程打开文件进行写入并不会截断文件,需要自己完成截断


1、实例程序,通过程序对文件进行一些基本操作:

//
//  main.m
//  NSFileHandle
//
//  Created by swinglife on 13-11-14.
//  Copyright (c) 2013年 swinglife. All rights reserved.
//


#import <Foundation/Foundation.h>


int main(int argc, const char * argv[])
{


    @autoreleasepool {
        NSFileHandle *inFile,*outFile;
        NSData *buffer;
        NSString *fileContent = @"这些是文件内容,这些是文件内容,这些是文件内容,这些是文件内容,这些是文件内容";
        NSFileManager *fm = [NSFileManager defaultManager];
        
        //创建一个文件
        [fm createFileAtPath:@"testFile.txt" contents:[fileContent dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];
        //创建一个需要写入的文件
        [fm createFileAtPath:@"outFile.txt" contents:nil attributes:nil];
        
        //读取文件
        inFile = [NSFileHandle fileHandleForReadingAtPath:@"testFile.txt"];
        //写入文件
        outFile = [NSFileHandle fileHandleForWritingAtPath:@"outFile.txt"];
        
        if(inFile!=nil){
            //读取文件内容
            buffer = [inFile readDataToEndOfFile];
            
            //将文件的字节设置为0,因为他可能包含数据
            [outFile truncateFileAtOffset:0];
            
            //将读取的内容内容写到outFile.txt中
            [outFile writeData:buffer];
            
            //关闭输出
            [outFile closeFile];
            
            //验证outFile内容
            NSLog(@"%@",[NSString stringWithContentsOfFile:@"outFile.txt" encoding:NSUTF8StringEncoding error:NULL]);
            
            
            //创建一个新的文件用来循环写入
            [fm createFileAtPath:@"outFile2.txt" contents:nil attributes:nil];
            
            //打开一个新的输出
            outFile = [NSFileHandle fileHandleForWritingAtPath:@"outFile2.txt"];
            
            //设置一个循环写入10条数据,每条数据都再后面添加上而不是覆盖
            for (int i = 0; i<10; i++) {
                //将偏移量设置为文件的末尾
                [outFile seekToEndOfFile];
                //写入数据
                [outFile writeData:buffer];
            }
            
            //验证内容
            NSLog(@"outFile2:%@",[NSString stringWithContentsOfFile:@"outFile2.txt" encoding:NSUTF8StringEncoding error:NULL]);
            
            //关闭所有
            [outFile closeFile];
            [inFile closeFile];
            
            
        }
       
        
    }
    return 0;
}



2014-11-15 09:55:45 u012900383 阅读数 9890
  • iOS/Swift/OC/Objective-C/Xcode/0基础/入门

    这是一门快速入门iOS开发的课程,目的是让大家快速学会,iOS开发环境搭建,和iOS一些基础知识,最后完成一个小项目。 项目信息 提供完整的Git提交历史,和每节视频一一对应,目前有41次提交,355行注释,271行代码(不包含可视化布局文件,纯Swift和Objective-C代码)。

    3870 人正在学习 去看看 任苹蜻

1. .m文件是纯Object-C 文件

.mm是Object-C和C++混合文件

 

2. .m只能调用纯Object-C的类,不能调用混合的

.mm可以调用Object-C的,也可以调用C++的

 

3. .m要调用混合的怎么办?

可以

解决办法是.h用Object-C的方式,而具体实现用.mm的方式

2015-07-07 17:06:16 xiongmimi 阅读数 83
  • iOS/Swift/OC/Objective-C/Xcode/0基础/入门

    这是一门快速入门iOS开发的课程,目的是让大家快速学会,iOS开发环境搭建,和iOS一些基础知识,最后完成一个小项目。 项目信息 提供完整的Git提交历史,和每节视频一一对应,目前有41次提交,355行注释,271行代码(不包含可视化布局文件,纯Swift和Objective-C代码)。

    3870 人正在学习 去看看 任苹蜻
Win TortoiseSVN:鼠标右键-TortoiseSVN-Settings-General-Subversion-Golobal ignore pattern

Win Subversion:编辑 C:\Users\{User}\AppData\Roaming\Subversion\config 文件,修改global-ignores的值。

Win SVN Project:新增或编辑 svn:global-ignores 项目

Mac Xcode/Subversion:vi ~/.subversion/config,修改global-ignores的值。



以上也是修改svn默认排除文件的方法。


转载自:http://www.cnblogs.com/ShepherdIsland/p/4001384.html
2016-02-03 16:03:24 lovenjoe 阅读数 2527
  • iOS/Swift/OC/Objective-C/Xcode/0基础/入门

    这是一门快速入门iOS开发的课程,目的是让大家快速学会,iOS开发环境搭建,和iOS一些基础知识,最后完成一个小项目。 项目信息 提供完整的Git提交历史,和每节视频一一对应,目前有41次提交,355行注释,271行代码(不包含可视化布局文件,纯Swift和Objective-C代码)。

    3870 人正在学习 去看看 任苹蜻
用Git管理IOS项目的时候,很多文件都不需要上传到Git服务器,所有在Xcode项目根目录下需要生成一个.gitignore文件来过滤一些文件。

项目来自于这里:https://github.com/github/gitignore/blob/master/Objective-C.gitignore

# Xcode
#
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore

## Build generated
build/
DerivedData

## Various settings
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata

## Other
*.xccheckout
*.moved-aside
*.xcuserstate
*.xcscmblueprint
*.xcscheme

## Obj-C/Swift specific
*.hmap
*.ipa

# CocoaPods
#
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
#
# Pods/

# Carthage
#
# Add this line if you want to avoid checking in source code from Carthage dependencies.
# Carthage/Checkouts

Carthage/Build

# fastlane
#
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the 
# screenshots whenever they are needed.
# For more information about the recommended setup visit:
# https://github.com/fastlane/fastlane/blob/master/docs/Gitignore.md

fastlane/report.xml
fastlane/screenshots
参考:http://www.jianshu.com/p/82e1d05baf1c


iOS中的.a文件

阅读数 1646

没有更多推荐了,返回首页